gpt4 book ai didi

javascript - 查询 JavaScript 代码的范围

转载 作者:太空宇宙 更新时间:2023-11-03 18:26:44 24 4
gpt4 key购买 nike

如果我在 python 代码下运行,

def f():
return bar

foo = f
foo()
bar = 3
foo()

as python file.py 那么这段代码将在 python 解释器的 __main__ 模块的范围内。

在类似的问题上,我想知道,下面的 JavaScript 代码的范围是什么?

var foo = function(){
return bar;
};

foo();
var bar = 3;
foo();

JavaScript 代码是否作为类似于 python 解释器环境的模块加载?

最佳答案

What is the scope of below JavaScript code?

这取决于环境。

对于客户端 JavaScript,代码片段将直接在全局范围内执行,使 foobar 成为全局对象 window 的全局变量和属性.

var foo = 'bar';

console.log('foo' in window); // true
console.log(window.foo, foo); // 'bar' 'bar'

不过,其他环境已经实现了模块规范,例如CommonJS中的模块规范。 ,并且可以定义每个脚本文件都有自己的范围。

var foo = 'bar';

console.log('foo' in global); // false

exports.foo = foo; // make available to other modules

关于javascript - 查询 JavaScript 代码的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23047614/

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