如何使用javascript从另一个函数访问函数中声明的变量

如何使用javascript从另一个函数访问函数中声明的变量,javascript,jquery,function,Javascript,Jquery,Function,在Javascript中,我需要从另一个函数访问函数中声明的变量,如: function abc() { var a = 'StackOverflow'; } 在函数abc之外,我需要访问变量a 我试着说: var s = function abc() { var a = 'StackOverflow'; } alert(s.a); 我可以通过将a声明为全局变量来访问它的值,但我想知道如何从函数abc的引用中访问它 请解决这个问题 谢谢。这就是所谓的JavaScript对象!

在Javascript中,我需要从另一个函数访问函数中声明的变量,如:

function abc()
{
  var a = 'StackOverflow';
}
在函数abc之外,我需要访问变量a

我试着说:

var s = function abc()
{
    var a = 'StackOverflow';
} 

alert(s.a);
我可以通过将
a
声明为全局变量来访问它的值,但我想知道如何从
函数abc
的引用中访问它

请解决这个问题


谢谢。

这就是所谓的JavaScript对象!这样做:

var s = new function abc()
{
    this.a = 'StackOverflow';
}
s.a; , e.g alert(s.a);
这样称呼:

var s = new function abc()
{
    this.a = 'StackOverflow';
}
s.a; , e.g alert(s.a);
或者以其他方式:

var s = function abc()
{
    var a = 'StackOverflow';
    return {
        a: a
    };
}
你可以像这样得到它:

s().a;
试试这个:

函数abc()
{
this.a='StackOverflow';
this.b='jquerycore';
this.c='JavaScript';
} 
var s=新的abc();

警报(s.a)您可以使用具有自己属性的函数:

var s=函数(){
函数abc(r){//以一个参数声明函数为例
return Math.PI*r*r;//做点什么,这里返回圆的面积作为示例
}
abc.a='StackOverflow';//使用值设置属性a
return abc;//返回带有属性的函数
}();                            // 生活
document.getElementById('out').innerHTML=s.a+'
'+s(3)
s.a()<代码>a
不是
函数
如果我在
函数abc
中声明了一个
变量
,并且在
内部函数
中为其分配了一个值,该怎么办?函数中定义的变量是该函数的局部变量,除非变量被定义为上述函数的属性。这些变量在
abc
函数中不是真正的变量。您应该解释OP所要求的是如何不可能的,以及这是如何实现类似目标的。还要说明,如果调用了
abc()
,而没有
new
,则您正在创建全局变量,您不能这样做。请参阅:局部变量存在于堆栈上,一旦函数返回,它就会消失,无法访问,除非您通过闭包、全局变量或从该函数返回它来公开它。