Javascript - 从窗口范围访问函数内部的变量?

时间:2015-04-18 06:33:33

标签: javascript scope closures

请参阅小提琴 - https://jsfiddle.net/0ra0x50q/1/

要求是从窗口范围访问函数内部的变量。使用闭包或任何其他方式。

function a() {
var x = 3;
this.y = 4;
}

alert(x) //should alert 3
alert(y) //should alert 4;

注意 - 您不能将值存储在新对象中并将其返回,或者返回变量本身,简而言之,没有什么有趣的东西!

1 个答案:

答案 0 :(得分:1)

你的策略不健康。您应该更改您的场景,以避免需要本地声明的变量,如果可以的话,全局需要。

但这是解决方案:

function declareVariables()
{
   window.$config = "MyConfigValue"; // note you can use array, it's better.
}

declareVariables();

然后你可以使用:

console.log($config);