1、 process
process 是一个全局变量,即 global 对象的属性。它用于描述当前Node.js 进程状态的对象,提供了一个与操作系统的简单接口。通常在你写本地命令行程序的时候,少不了要 和它打交道。
process.env //在项目工程中用来获取环境变量
2、Path模块
var path = require("path")
2.1、path.join([path1][, path2][, ...])
//用于连接路径。该方法的主要用途在于,会正确使用当前系统的路径分隔符,Unix系统是"/",Windows系统是"\"。
path.join()方法是将多个参数字符串合并成一个路径字符串
console.log(path.join(__dirname,'a','b')); 假如当前文件的路径是E:/node/1,那么拼接出来就是E:/node/1/a/b。
console.log(path.join(__dirname,'/a','/b','..')); 路径开头的/不会影响拼接,..代表上一级文件,拼接出来的结果是:E:/node/1/a
console.log(path.join(__dirname,'a',{},'b')); 而且path.join()还会帮我们做路径字符串的校验,当字符串不合法时,会抛出错误:Path must be a string.
console.log(path.join('/a','/b');
拼接结果:/a/b
2.2、path.resolve([from ...], to)
path.resolve()
方法会把一个路径或路径片段的序列解析为一个绝对路径。
path.resolve()方法是以程序为根目录,作为起点,根据参数解析出一个绝对路径
以应用程序为根目录
普通字符串代表子目录
/代表绝对路径根目录
path.resolve('foo/bar', '/tmp/file/', '..', 'a/../subfile')相当于 cd操作
cd foo/bar cd /tmp/file/ cd .. cd a/../subfile pwd path.resolve('/foo/bar', './baz') // 输出结果为 '/foo/bar/baz' path.resolve('/foo/bar', '/tmp/file/') // 输出结果为 '/tmp/file' path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif') // 当前的工作路径是 /home/itbilu/node,则输出结果为 '/home/itbilu/node/wwwroot/static_files/gif/image.gif'
3、__dirname
Node.js 中,__dirname
总是指向被执行 js 文件的绝对路径