当全局变量“x”被函数内的同名变量覆盖时,我想访问它。
function outer() {
var x = 10;
function overRideX() {
var x = "Updated";
console.log(x);
};
overRideX();
}
outer();
Jsbin:小提琴测试
我不想将内部的“x”变量重命名为别的东西。这可能吗 ?
编辑:在 abeisgreat 答案后编辑问题。
当全局变量“x”被函数内的同名变量覆盖时,我想访问它。
function outer() {
var x = 10;
function overRideX() {
var x = "Updated";
console.log(x);
};
overRideX();
}
outer();
Jsbin:小提琴测试
我不想将内部的“x”变量重命名为别的东西。这可能吗 ?
编辑:在 abeisgreat 答案后编辑问题。
您可以使用 window.x 来引用全局范围的变量。
var x = 10;
function overRideX() {
var x = "Updated";
console.log(x);
console.log(window.x);
};
overRideX();
此代码记录“更新”然后 10。
您的网页的全球范围是window
. 因此,可以通过window
对象访问全局范围内定义的每个变量。
var x = 10;
function overRideX() {
var x = "Updated";
console.log(x + ' ' + window.x);
}();