node.js带你入门

183 阅读2分钟

「本文正在参与技术专题征文Node.js进阶之路,点击查看详情

作用:

  1. 开发后端
  2. 读写数据库,创建使用命令行工具辅助前端开发
  3. 基于Express框架,可以快速构建web应用
  4. 基于Electron框架,可以构建跨平台的桌面应用
  5. 基于restify框架可以快速构建API接口项目

运行环境

注意:

  • 浏览器是 JavaScript 的前端运行环境。(浏览器是客户端安装的软件)
  • Node.js 是 JavaScript 的后端运行环境。(正常情况下,Nodejs要安装到服务器上)
  • Node.js 中无法调用 DOM 和 BOM 等 浏览器内置 API。

node运行环境.png

模块化:

模块化的优点

  • 更利于维护;
  • 更好的复用性;

自定义模块导入导出:

  • 文件被导入,会立即执行
  • 变量如果要共用,需要在源文件中导出module.exports.变量 = 变量
  • 变量要共用,需要在使用文件中接受let obj = require('文件路径')

注意:导入模块必须带路径,即便两个js文件在同一个目录,也要加“./”前缀必须带,后缀可以省略

通过 module.exports = 导出的内容, 导出内容 通过 require('./a'); 导入内容

内置模块

  1. Node 环境自带的模块;安装完Node即可直接使用
  2. .Node内置模块有很多,具体参见 nodejs.cn/api/

fs模块

fs.readFile()

作用:读取文件(获取文件里面的内容)

这是一个异步方法

事例:

     fs.readFile('文件路径', [utf-8], (err, data) => {
         // 读取无错误,err=null; 读取有错误,err=错误对象
         // data 表示读取的结果
     })
 ​

fs.writeFile()

作用:写入内容

这是一个异步方法

作用:写入内容

事例:

     const fs = require('fs') //导入内置模块
     //写入内容 
     fs.writeFile('文件路径', '123', err => {
         //写入成功err为null  写入失败,err就是对象
         if (err) return console.log(err.name, err.message)
         console.log('恭喜您,写入成功!')
     })
     // 这个写入方法也是异步
     console.log('我是最后一行代码')

path模块

path.extname() 获取路径中的后缀

 // 导入模块
 const path = require('path')
 ​
 //定义一个路径
 let url = 'http://www.baidu.com/index.html'
  
 //1.payh.extname()  获取后缀名    .html
 let name1 = path.extname(url)
 console.log(name1)
 ​

path.basename() 获取基础名称

 // 导入模块
 const path = require('path')
 ​
 //定义一个路径
 let url = 'http://www.baidu.com/index.html'
 // 2.path.basename()  获取基础名称      index
 let name2 = path.basename(url, name1)
 console.log(name2)
 ​

path.join() 拼接给出的路径

  • Node中,有一个全局变量 __dirname ,它表示当前 JS 文件所在的绝对路径
 const fs = require('fs')
 const path = require('path')
 // path.join('')能够拼接路径
 url = path.join(__dirname, './txt/001.txt')