-
全局模块
-
process.env 环境变量
if (process.env.dev) { console.log('开发环境'); } else { console.log('生产环境'); }
-
process.argv 提供当前 Node.js 进程的有关信息
let num1 = parseInt(process.argv[2]) let num2 = parseInt(process.argv[3]) console.log(num1 + num2);
-
-
系统模块
-
定义:需要require(),但不需要单独下载
-
path: 用于处理文件路径和目录路径的实用工具
let path = require('path') // path.dirname() 获取当前文件路径 console.log(path.dirname('./node/a/b/c/1.jpg')); // ./node/a/b/c // path.basename() 获取当前路径中的名字 console.log(path.basename('./node/a/b/c/1.jpg')); // 1.jpg // path.extname() 获取当前路径中的扩展名 console.log(path.extname('./node/a/b/c/1.jpg')); //.jpg // 返回当前文件绝对路径 console.log(path.resolve(__dirname, 'index.js'));
-
fs: 用于文件读写操作
fs-test.js
abc
使用
let fs = require('fs') /** * 异步操作 */ // fs读操作 fs.readFile('./fs-test.js', (err, data) => { if (err) { console.log(err); } else { console.log(data.toString()); } }) // fs写操作(覆盖内容) fs.writeFile('fs-test2.js', '月薪2万', (err) => { if (err) { throw err } }) // fs写操作(追加内容)a 表示 fs.appendFile fs.writeFile('fs-test2.js', '月薪3万', { flag: "a" }, (err) => { if (err) { throw err } }) /** * 同步 */ // fs读操作 let data1 = fs.readFileSync('./fs-test.js') console.log(data1.toString()); // fs写操作 let data2 = fs.writeFileSync('./fs-test2', '月薪20k')
-
-
自定义模块
-
定义:require自己封装的模块
require 导入模块
- 如果有路径,就去路径里找
- 没有就去node_modules 里找
- 再没有就去node安装目录里找
-
exports
mod-test.js
// 单个导出 exports.a = 1; exports.b = 2;
mod.js
// 单个导出 const mod1 = require('./mod-test') console.log(mod1.a); console.log(mod1.b);
-
module
-
模块导出
mod-test.js
/** * 模块化导出 */ module.exports = { a: 1, b: 2 } // 方法导出 module.exports = function () { console.log(123); } // class导出 module.exports = class { constructor(name) { this.name = name } show () { console.log(this.name); } }
mod.js
// 方法导出 const mod1 = require('./mod-test') mod1() // class导出,需要实例化 const mode1 = require('./mod-test') let p = new mode1('aaaaaaaaaa') p.show()
-
-
Node.js——node模块
最新推荐文章于 2024-10-02 15:55:23 发布