JavaScript / node.js——全局作用域区别

JavaScript与node.js中都用global代表全局对象,

但是在JavaScript中,global不提供对外的访问接口,使用window指向global,也就是说,在JavaScript中,windows是global的表现,如果在JavaScript中直接访问global,会返回undefined。

在node中,global表示全局,没有window对象,但是如果使用global来访问一个全局对象变量(如:var a=100;console.log(global.a))同样会返回undefined,因为在node中涉及到模块的定义(在node中一个文件就是一个模块,每个模块都有自己的作用域,使用var声明的变量的作用域只是模块的作用域,如果要声明全局作用域,可以使用global.a来声明一个全局作用域)。node中的__filename属性和__dirname属性(返回解析过的绝对路径)等属性看起来像全局变量,但不是全局变量,返回对应模块文件的绝对路径

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值