众所周知,js函数内部的局部变量,外界是访问不到的。那么js中是如何访问函数内部的局部变量。
今天有个很简单的需求,要用到函数内的变量,简单记一下;
function t() {
let ttt = "测试";//要获取的变量
}
console.log(ttt);
当然这个报错了,ttt not Defind
解决方式,使用闭包然后return出去;
function t() {
let ttt = "测试";
return function () {
return ttt;
}
}
console.log(ttt);
成功访问
还有个例子:
function one() {
var a = 1;
return function () {
return a;
};
}
//方式一,匿名函数调用
alert(one( )); //返回匿名方法function()
alert(one( )( )); //返回1
//另一种方式,较为直观
var b = one();
alert(b()); //返回1