1

我在函数中有一个变量,我想从其他函数访问它。我无法在函数之外定义这个变量。我设置了示例代码以供审查。http://jsfiddle.net/VC6Wq/1/

function one(){
var zero= 500;
}

function two(){
alert(zero)
}
4

6 回答 6

10

我想这就是你要找的。

function one() {
var zero = 500;
two(zero);
}

function two(a) {
alert(a);
}
于 2013-02-19T12:59:33.093 回答
4

如果在浏览器中,您可以将变量置于window全局变量之下。所以像这样:

function one() {
  window.zero = 500;
}

function two() {
  alert(window.zero)
}
于 2013-02-19T12:59:35.230 回答
2

像这样试试

function one(){
    var zero= 500;
    return zero;
}

function two(){
    var alt = one();
    alert(alt);
}
于 2013-02-19T13:00:14.583 回答
0

您可以在 Javascript 中全局声明该变量,然后根据需要使用/修改/访问

function one()
{
   myVar = 0;
   alert(myVar);
   two();
}

function two()
{
  alert(myVar);
}
于 2013-02-19T13:03:06.683 回答
0

由于不能全局定义变量,一种方法是模拟全局变量,将其附加到 DOM 节点,如下所示:

//note the notation 'data-'
<div id="node" data-zero='500'/>

要设置值:

   // Store the value into data var within the div
   $('#node').data('zero', value);

要获得价值:

   var value =  $('#node').data('zero');
   alert(value);

示例:http: //jsfiddle.net/VC6Wq/4/

于 2013-02-20T11:32:36.743 回答
0

尝试这个 :

function one(){
var zero = 500;
return zero;
}
function two(){   
alert(one());
}
two();

或者在全局范围内定义任何其他变量并将其分配为 'zero' 的值:

var zero_2;
function one(){
var zero = 500;
var zero_2 = zero;
}
function two(){   
alert(zero_2);
}
two();
于 2013-02-19T12:58:56.097 回答