提问人:Pr00grammer 提问时间:7/19/2021 最后编辑:Pr00grammer 更新时间:7/19/2021 访问量:72
这是浏览器中的箭头函数是全局的,但在 NodeJS 中不是
this is Arrow functions in browser is global but not in NodeJS
问:
在 Google Chrome 中
const ExampleObject5 = () => {
console.log(this===window)
}
ExampleObject5()
打印 true
但是在节点中
const ExampleObject5 = () => {
console.log(this===global)
}
ExampleObject5()
打印 False
答:
1赞
Giovanni Esposito
7/19/2021
#1
通过阅读 NodeJS 文档:
全球
全局命名空间对象。
在浏览器中,顶级作用域是全局作用域。这意味着 在浏览器中,如果你在全局范围内,var 会定义一个 全局变量。在 Node.js 中,这是不同的。顶级范围是 不是全局范围;var Node.js 模块中的东西将是 该模块的本地。
因此,在 Node 中,顶级作用域不是全局作用域(如浏览器),而是模块本身。
评论