javascript - 为什么 'secret' 变量不是全局变量?

标签 javascript

我正在阅读一本 JS 书中关于闭包的部分,并在显示“getter/Stetter”函数的部分找到了一个示例...

var getValue, setValue;

(function (){

    var secret = 0;

    getValue = function(){
    return secret;
    }
    setValue = function(v){
    secret = v;
    }

})();

setValue(5);
getValue();
5 //get 5

1) 我认为省略“var”会使变量成为全局变量?

2) 我时常听到人们谈论“getters/Setters”,它们的实际用途是什么?

谢谢!

最佳答案

Why is the 'secret' variable not global?

因为它是使用 var 声明的。

var secret = 0;

I thought omitting 'var' made variables global?

在函数中使用 var 将使该语句中声明的所有变量成为局部变量。

关于javascript - 为什么 'secret' 变量不是全局变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21528960/

相关文章:

javascript - 是否可以编写一个使用 web 套接字进行传输的 javascript SSH 客户端?

javascript - 如何返回文档准备好的函数?

javascript - 如何使用脚本标签下的url标签

javascript - 使用javascript捕获用户空闲

c# - knockout 绑定(bind)问题

javascript - 数字和浮点验证未成功

php - 添加多个自定义标记/点

javascript - 如何将数据表的分页编号格式更改为其他语言环境?

javascript - 如何更改选项卡内的内容? [JS、JQUERY 和 HTML5]

javascript - jQuery .prop ('checked' , false) 不起作用