本文已参与「新人创作礼」活动,一起开启掘金创作之路。
Node.js的全局对象是具有全局性的,它们可在所有的模块中应用。我们并不需要包括这些对象在应用中,而可以直接使用它们。
__filename
__filename 表示正在执行的代码的文件名。这是此代码文件的解析绝对路径。 为一个主程序这不一定是在命令行中使用相同的文件名。 模块内的路径模块文件的值。
console.log(__filename);
运行:
$ node main.js
结果(当前文件绝对路径):
C:\Users\Lamb\Desktop\node\index.js
__dirname
__dirname表示当前正在执行的脚本所在目录的名称。
console.log(__dirname);
运行:
$ node main.js
结果(当前文件目录):
C:\Users\Lamb\Desktop\node
setTimeout(cb, ms)
setTimeout(cb, ms) 全局函数用于至少毫秒毫秒后运行回调cb。实际延迟取决于外部因素,如OS计时器粒度和系统负载。计时器不能跨越超过24.8天。
该函数返回一个表示可用于清除定时器,定时器的不透明值。
function printHello(){
console.log( "Hello, World!");
}
// Now call above function after 2 seconds
setTimeout(printHello, 2000);
clearTimeout(t)
clearTimeout(t)的全局函数用来停止以前用的setTimeout()创建一个定时器。这里t是由setTimeout()函数返回的计时器。
function printHello(){
console.log( "Hello, World!");
}
// Now call above function after 2 seconds
var t = setTimeout(printHello, 2000);
// Now clear the timer
clearTimeout(t);
setInterval(cb, ms)
setInterval(cb, ms) 全局函数是用来至少毫秒后重复运行回调cb。实际延迟取决于外部因素,如OS计时器粒度和系统负载。计时器不能跨越超过24.8天。
函数返回一个表示可用于清除定时器使用功能的计时器的不透明值 clearInterval(t)。
function printHello(){
console.log( "Hello, World!");
}
// Now call above function after 2 seconds
setInterval(printHello, 2000);
console
console 用于提供控制台标准输出,它是由 Internet Explorer 的 JScript 引擎提供的调试工具,后来逐渐成为浏览器的实施标准。
Node.js 沿用了这个标准,提供与习惯行为一致的 console 对象,用于向标准输出流(stdout)或标准错误流(stderr)输出字符。
console对象的常用方法(最常用的还是console.log):
| 序号 | 方法 & 描述 |
|---|---|
| 1 | console.log(data) 向标准输出流打印字符并以换行符结束。该方法接收若干 个参数,如果只有一个参数,则输出这个参数的字符串形式。如果有多个参数,则 以类似于C 语言 printf() 命令的格式输出。 |
| 2 | console.info(data) 该命令的作用是返回信息性消息,这个命令与console.log差别并不大,除了在chrome中只会输出文字外,其余的会显示一个蓝色的惊叹号。 |
| 3 | console.error(data) 输出错误消息的。控制台在出现错误时会显示是红色的叉子。 |
| 4 | console.warn(data) 输出警告消息。控制台出现有黄色的惊叹号。 |
| 5 | console.dir(obj[, options]) 用来对一个对象进行检查(inspect),并以易于阅读和打印的格式显示。 |
| 6 | console.time(label) 输出时间,表示计时开始。 |
| 7 | console.timeEnd(label) 结束时间,表示计时结束。 |
| 8 | console.trace(message[, ...]) 当前执行的代码在堆栈中的调用路径,这个测试函数运行很有帮助,只要给想测试的函数里面加入 console.trace 就行了。 |
| 9 | console.assert(value, message) 用于判断某个表达式或变量是否为真,接收两个参数,第一个参数是表达式,第二个参数是字符串。只有当第一个参数为false,才会输出第二个参数,否则不会有任何结果。 |