如何访问闭包中的变量

how to access variable inside the closure

本文关键字:闭包 变量 访问 何访问      更新时间:2024-03-05

可以帮助读取闭包中的变量。我知道通过一个带有return语句的函数,我可以得到值。

var getCounter = (function () {
    var counter = 10;
    return function () {return counter;}
})();
getCounter(); produces 10

有没有任何方法可以在不使用返回函数的情况下访问或读取变量?

var getCounter = (function () {
    this.counter = 10;
})();
console.log(counter);

var getCounter = (function () {
        counter = 10;
    })();
    console.log(counter);

jsfiddle

我不知道你为什么需要这里的闭包,

var getCounter = (function () {
  counter = 10;
  return counter;
})();
// As you wrote a closure it is self executed so getCounter variable has the counter value; 
var x = getCounter; 

您也可以尝试一下,

var counter;
var getCounter = (function() {
  counter = 10;
})();