javascript - 为什么getValue()得出的是123?
本文介绍了javascript - 为什么getValue()得出的是123?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
var getValue,setValue;
(function(){
var secret=0;
getValue=function(){
return secret;
};
setValue=function(v){
if(typeof v==="number"){
secret=v;
}
};
}());
getValue();//0
setValue(123);
getValue();//123
setValue(false);
getValue();//123
这个问题已被关闭,原因:问题已解决 - 问题已解决,且对他人无借鉴意义
解决方案
getValue()
和setValue()
为闭包, 共享一个变量 secret
, 所以在setValue
函数中更改了secret
,getValue()
读取secret
当然会随之改变.
这篇关于javascript - 为什么getValue()得出的是123?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文