一、__dirname
__dirname是一个Node全局变量,它返回当前模块的目录名。这个变量通常用于构建文件路径。
console.log(__dirname);
// 输出:/Users/username/Documents/code
在上面的例子中,__dirname变量返回了当前文件的目录,即/Users/username/Documents/code。
二、__filename
__filename是一个Node全局变量,它返回当前模块文件的文件名。
console.log(__filename);
// 输出:/Users/username/Documents/code/index.js
在上面的例子中,__filename变量返回了当前文件的文件名,即index.js。
三、process.argv
process.argv是一个Node全局变量,它返回一个数组,其中包含当前进程的命令行参数。
console.log(process.argv);
// 输出:['node', '/Users/username/Documents/code/index.js', 'arg1', 'arg2']
在上面的例子中,process.argv变量返回了一个包含当前进程的命令行参数的数组,即['node', '/Users/username/Documents/code/index.js', 'arg1', 'arg2']。
四、global
global是一个Node全局对象,它可以在整个应用程序中使用。它包含了所有Node.js的全局变量。
console.log(global);
在上面的例子中,global变量返回了Node.js中的全局对象。
五、process
process是一个Node全局对象,它提供了与当前进程相关的信息和控制。
console.log(process);
在上面的例子中,process对象包含了与当前进程相关的信息和控制。它提供了许多有用的方法和属性,例如process.env、process.cwd()、process.exit()等。
六、module
module是一个Node全局对象,它表示当前模块。
console.log(module);
在上面的例子中,module对象表示当前模块。它包含了与当前模块相关的信息和控制,例如module.exports、module.id、module.filename等。
七、Buffer
Buffer是一个Node全局对象,它用于处理二进制数据流。
const buf = Buffer.from('hello world', 'utf8');
console.log(buf);
// 输出:
在上面的例子中,Buffer对象表示一个由字符串'hello world'转换成的二进制数据流。
八、setTimeout
setTimeout是一个Node全局函数,它用于在指定的毫秒数之后调用一个函数。
function doSomething() {
console.log('Something is done.');
}
setTimeout(doSomething, 1000);
在上面的例子中,setTimeout函数用于在1000毫秒后调用doSomething函数。
九、setInterval
setInterval是一个Node全局函数,它用于每隔指定的毫秒数调用一个函数。
function doSomething() {
console.log('Something is done.');
}
setInterval(doSomething, 1000);
在上面的例子中,setInterval函数用于每隔1000毫秒调用doSomething函数。
十、require
require是一个Node全局函数,用于加载一个模块文件。
const exampleModule = require('./exampleModule');
console.log(exampleModule);
在上面的例子中,require函数用于加载当前目录下的exampleModule模块文件。
总结
Node全局变量是很有用的,它们可以为我们提供许多方便。在本文中,我们详细讲解了Node全局变量的功能和使用方法,并从多个方面对它们进行介绍。通过掌握这些全局变量,我们可以更好地使用Node.js来进行开发。