内容索引
Global Objects
这些对象是全局的,在所有模块中都可用。其中一些对象实际上作用域不是全局,而是模块作用域。
global
- {Object} 全局命名空间对象
全局作用域,var something在Node 模块中只对所在的模块有效。
process
- {Object}
进程对象,看process object 一节
console
- {Object}
用来打印标准输出(stdout)和标准错误(stderr),看 stdio 节
Buffer
- {Object}
用来处理二进制数据,看 buffer section 节
require()
- {Function}
请求模块,看 Modules 节,require 实际上不是全局的,对于模块来说是本地的
require.resolve()
用内部require()查找一个模块的位置,而不是加载模块,仅返回被处理的文件名require.cache
- Object
当有需要的时候,模块被缓存在这个对象里边,通过从这个对象中删除一个Key值,下一个require 将重新加载被从cache中删除的模块
_filename
- {String}
正在被执行的代码的文件名,这是正在被执行的代码的文件的绝对路径。对于主程序,在命令行中不必输入完全路径名,在模块内部的值是这个模块文件的全路径名。
例子:从 /Users/mjr 目录运行 node example.js
console.log(__filename);
// /Users/mjr/example.js
_filename实际上不是全局的,对于每个模块来说是本地的对象
_dirname
- {String}
当前执行脚本所在位置的目录,看 stdio 节
例子:从 /Users/mjr 目录运行 node example.js
console.log(__dirname);
// /Users/mjr
_dirname实际上不是全局的,对于每个模块来说是本地的对象
module
- {Object}
当前模块的一个引用。module.exports 和exports对象是一样的。了解更多信息看 /src/node.js ,module实际上不是全局的,对于每个模块来说是本地的对象
exports
通过 require() 被当前模块所有实例共享的一个对象。exports等同于module.exports对象,了解更多信息看 /src/node.js ,exports实际上不是全局的,对于每个模块来说是本地的对象
了解更多信息,访问 module system document 和 module section
setTimeout(cb, ms)
clearTimeout(t)
setInterval(cb, ms)
clearInterval(t)
timer函数是全局变量,详情访问 timers 节