`
yangzhiyong77
  • 浏览: 959402 次
文章分类
社区版块
存档分类
最新评论

nodeJS入门例子一—全局对象

 
阅读更多

这些对象在所有模块中可用。实际上其中某些对象可以使用在模块范围但不适用于全局范围,这些将另行通知。

global(全局)

全局命名空间对象(The global namespace object.)

在浏览器中,最高层的范围(top-level scope)是全局范围(global scope)。意思就是说如果你在浏览器的全局范围中定义一个变量,将定义的是全局可用的变量。在NODEJS中不同。最高层的范围(top-level scope)不是全局范围(global scope);在node模型中定义一个变量将是这个模块的局部变量。

process(过程)

过程对象(process object)请参阅过程对象章节。

console (控制台)

用于标准输出(stdout :standard output)和标准错误输出(stderr:STDERR)的打印,参考标准输入输出(stdio:standard input/ouput)章节

Buffer (缓冲)

用于处理二进制数据( binary data),参考缓冲章节。

require() (请求模块)

请求模块。查看模块章节。require 实际上不是一个全局的,更确切地说是每个模块的局部的。

require.resolve()

require()内部机构查看一个模块的本地情况,实际上就是加载模块,仅仅返回解析的文件名

require.cache

当模块被请求时全都缓存在这个对象中。可以通过一个键值对(keyvalue )从此对象中删除,下一个请求将重新加载模块

__filename

代码中的filename将被执行。这是这个代码文件的绝对路径。对于一个主程序,这没有必要再命令行中使用相同的文件名。在模块中的值是这个模块文件的路径。

例子:运行/Users/mjr路径下的js文件。

node example.js

console.log(__filename);
// /Users/mjr/example.js

__filename不是实际的全局变量,而是一个模块的局部变量。

__dirname

当前执行脚本的目录路径名。

Example: running node example.js from /Users/mjr

console.log(__dirname);
// /Users/mjr

__dirname不是实际的全局变量,而是一个模块的局部变量。

module

当前模块的一个引用。详细说明 module.exportsexports 是相同对象。查看src/node.js获取更多详细信息。module 不是实际的全局变量,而是一个模块的局部变量。

exports

一个在当前模块中所有实体共享的对象,可以通过访问require()获取。exportsmodule.exports是同一对象。查看src/node.js获取更多详细信息。exports 不是实际的全局变量,而是一个模块的局部变量。

setTimeout(cb, ms) #

clearTimeout(t) #

setInterval(cb, ms) #

clearInterval(t) #

这些定时器函数都是全局变量,请参考定时器章节(timers)


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics