Global Objects全局对象
These objects are available in all modules. Some of these objects aren't actually in the global scope but in the module scope - this will be noted.
这么对象在所有的模块中可用,那些不在全局范围的对象而在模块范围的对象会被注明的。
global#
- {Object} The global namespace object.全局命名空间对象
In browsers, the top-level scope is the global scope. That means that in browsers if you're in the global scope var something
will define a global variable. In Node this is different. The top-level scope is not the global scope; var something
inside a Node module will be local to that module.
在游览器中,最上层区域就是全局区域。意思就是在全局区域定义的变量就是全局变量。但是在Nodejs中是不同的,最上层区域不是全局区域,
在某一个node模块中定义的变量只能是属于该模块
process#
- {Object}
The process object. See the process object section.
The process
object is a global object and can be accessed from anywhere. It is an instance of EventEmitter.
process对应是个全局变量,可以再任何地方引用它,它是一个EventEmiitter的实例
console#
- {Object}
Used to print to stdout and stderr. See the stdio section.
用于打印标准输出和标准错误
Class: Buffer#
- {Function}
Used to handle binary data. See the buffer section
用于处理字节数据,这样因为,Node.js处理TCP Stream和文件时使用的八进制流,而客服端的JavaScript是对binary data处理并不友好
在node.js中就专门创建了Buffer类来处理binary data。
require()#
- {Function}
To require modules. See the Modules section. require
isn't actually a global but rather local to each module.
用于将一个模块加载到另一个模块中,但require事实上并不是全局的,而是每一模块中的全局方法。
require.resolve()#
Use the internal require()
machinery to look up the location of a module, but rather than loading the module, just return the resolved filename.
使用内部require()工具找到某个module的位置,而不是上传该module,最终返回的是一个解析后的文件名
require.cache#
- Object
Modules are cached in this object when they are required. By deleting a key value from this object, the next require
will reload the module.
在模块被请求时就被缓存到了该对象中。从该对象中删除键值,再一次用require该模块又将缓存它到该对象中。
require.extensions#
- Array
Instruct require
on how to handle certain file extensions.
Process files with the extension .sjs
as .js
:
require.extensions['.sjs'] = require.extensions['.js'];
Write your own extension handler:
require.extensions['.sjs'] = function(module, filename) {
var content = fs.readFileSync(filename, 'utf8');
// Parse the file content and give to module.exports
module.exports = content;
};
require扩展方法
__filename#
- {String}
The filename of the code being executed. This is the resolved absolute path of this code file. For a main program this is not necessarily the same filename used in the command line. The value inside a module is the path to that module file.
Example: running node example.js
from /Users/mjr
console.log(__filename);
// /Users/mjr/example.js
__filename
isn't actually a global but rather local to each module.
当前文件的名称
__dirname#
- {String}
The name of the directory that the currently executing script resides in.
Example: running node example.js
from /Users/mjr
console.log(__dirname);
// /Users/mjr
__dirname
isn't actually a global but rather local to each module.
当前文件所在的目录
module#
- {Object}
A reference to the current module. In particularmodule.exports
is the same as the exports
object.module
isn't actually a global but rather local to each module.
See the module system documentation for more information.
exports#
An object which is shared between all instances of the current module and made accessible through require()
.exports
is the same as the module.exports
object.exports
isn't actually a global but rather local to each module.
See the module system documentation for more information.
See the module section for more information.
下面的定时处理方法,就不多说了,和JavaScript中的一样
setTimeout(cb, ms)#
Run callback cb
after at least ms
milliseconds. The actual delay depends on external factors like OS timer granularity and system load.
The timeout must be in the range of 1-2,147,483,647 inclusive. If the value is outside that range, it's changed to 1 millisecond. Broadly speaking, a timer cannot span more than 24.8 days.
Returns an opaque value that represents the timer.
clearTimeout(t)#
Stop a timer that was previously created with setTimeout()
. The callback will not execute.
setInterval(cb, ms)#
Run callback cb
repeatedly every ms
milliseconds. Note that the actual interval may vary, depending on external factors like OS timer granularity and system load. It's never less than ms
but it may be longer.
The interval must be in the range of 1-2,147,483,647 inclusive. If the value is outside that range, it's changed to 1 millisecond. Broadly speaking, a timer cannot span more than 24.8 days.
Returns an opaque value that represents the timer.
clearInterval(t)#
Stop a timer that was previously created with setInterval()
. The callback will not execute.
The timer functions are global variables. See the timers section.