gpt4 book ai didi

javascript - Node.js 和 javascript 解释器有什么不同?

转载 作者:搜寻专家 更新时间:2023-10-31 23:43:23 26 4
gpt4 key购买 nike

对于下面的代码,在 Javascript 中我得到了输出:The Window

var name = "The Window";
var object = {
   name : "My Object",
    getNameFunc : function(){
      return function(){
        return this.name;
      };
    }
  };
console.log(object.getNameFunc()());

但是对于 Node.js,我得到以下输出:undefined

我很困惑,Node.js 是否使用与 javascript 不同的解释器?

最佳答案

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.

所以在全局范围内,当你运行 var name = "The Window"; 时,它与 window.name = "The window"; 相同。

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 中获取 name 的原因。

关于javascript - Node.js 和 javascript 解释器有什么不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18525310/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com