如何将全局范围变量引用到本地范围?

Raj*_*Raj 4 javascript

var b=1;

function someFunc(b) {
     //here 
}
Run Code Online (Sandbox Code Playgroud)

我希望能够引用在函数外定义的变量b.怎么能在javascript中完成?

jAn*_*ndy 8

你需要通过访问它global object,这是window在浏览器中,并global在node.js中的实例.

var b=1;

function someFunc(b) {
    alert( window.b ); // or console.log( global.b );
}
Run Code Online (Sandbox Code Playgroud)

为什么?那么,这种称为激活对象(在ES3中)或词汇环境记录(ES5)将与变量名称重叠b.因此b,只要JS引擎解决它,它将在第一次出现时停止,这是在它自己的Scope中.