比如我有个函数:
function aa() {var a = 'hello'; }
我如何访问到这个变量a的值呢??
除非你在aa里面写一个公用接口提供访问,不然的话在外部访问不了。
没设置全局的,那就通过调用方法调用。不过得return一下才可以,比如
function aa(){
var a = 'hello';
return a;
}
var _v = aa();
console.log(_v);
多贴点儿具体代码吧?说一下你应用场景,否则别人的答案可能都不符合你的实际要求。
而不是问一个你认为可能的解决方法。
//你这个不算私有变量,你可以这样写。
function aa() {
this.a = 'hello';
}
var test = new aa();
console.log(test.a);
在里边写一个方法被
比如:
function aa() {
var a = 'hello';
return {
getAValue:function(){
return a;
}
}
}
var c = new aa();
alert(c.getAValue());
可以使用闭包的方法:
function aa() {
var a = 'hello';
return function(){
return a;
}
}
然后在外面接收:
var fn=aa();//返回一个匿名函数
var a=fn();//获取到匿名函数中的返回值
根据作用域链的原理内部的函数可以访问到外部函数的变量,然后将获取的变量返回即可。