02node_全局变量

Node中给我们提供了一些全局对象,方便我们进行一些操作

特殊的全局对象

这些对象可以在任何模块中使用,但是不能在命令交互行中使用

__dirname:获取当前文件夹所在的路径,不包括文件夹本身

__filename:获取当前文件夹所在的路径,包括文件夹本身

exports:导出          导出的是一个对象     

module:模块

require():导入    一个函数,导入的是一个对象

常见的全局对象

process:process提供了Node进程中相关的信息:比如Node的运行环境、参数信息等

console:提供了简单的调试控制台

定时器函数:在Node中使用定时器有好几种方式:

                    setTimeout(callback, delay[, ...args]):callback在delay毫秒后执行一次;

                    setInterval(callback, delay[, ...args]):callback每delay毫秒重复执行一次;

                    setImmediate(callback[, ...args]):callbackI / O事件后的回调的“立即”执行;

                               这里先不展开讨论它和setTimeout(callback, 0)之间的区别;

                    process.nextTick(callback[, ...args]):添加到下一次tick队列中;

                                 具体的讲解,也放到事件循环中说明;

global对象

global对象也是一个对象,事实上我们提到的process,console,等都被放到global中

global和window的区别

 在浏览器中,全局变量都是在window上的,比如有document、setInterval、setTimeout、alert、console等等

 在Node中,我们也有一个global属性,并且看起来它里面有很多其他对象。

但是在浏览器中执行的JavaScript代码,如果我们在顶级范围内通过var定义的一个属性,默认会被添加到window

但是在node中,我们通过var定义一个变量,它只是在当前模块中有一个变量,不会放到全局中

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容