本学习笔记是根据《Node.js开发指南》一书进行学习。
全局对象
JavaScript中有一个特殊的对象,称为全局对象(Global Object),它及其所有属性都可以在程序的任何地方访问,即全局变量。在浏览器JavaScript中,通常window是全局对象,而NodeJs中的全局对象是global,所有全局变量(除了global本身以外)都是global对象的属性。
全局对象和全局变量
按照ECMAScript的定义,满足以下条件的变量是全局变量:
- 在最外层定义的变量
- 全局对象的属性
- 隐式定义的变量(未定义直接赋值的变量)
在NodeJs中你不可能在最外层定义变量,因为所有用户代码都是属于当前模块的,而模块本身不是最外层上下文。
more >>