求js和jQuery多种保护内变量不受外界干扰的写法
5 回答
已采纳
Ego_echo
TA贡献3条经验 获得超1个赞
你的需求很不明确!作为一个程序员,请注意清晰的表达很重要!请注意清晰的表达很重要!请注意清晰的表达很重要!
猜一下:你是想在外部得到内部的变量,但外部却不能改变函数内部的变量吗?
如果是这样的话,很简单啊,直接用闭包就好了(jQuery也是同样的道路啊)!
function foo(){ var a = 10; function bar(){ alert(a); //你也可以直接写 return a; 嘛 } return bar; } var baz = foo(); baz(); //会弹出提示框显示10!你没办法在这里改变foo里面的a变量,但你却得到了a的值
另外一种闭包形式——立即执行函数:
var a = 10 !function(){ var a = 20; console.log(a); //会在控制台打印 20 }(); console.log(a); //会在控制台打印 10
添加回答
举报
0/150
提交
取消