我确定这非常简单,我正在绘制一个巨大的空白,但是如何将函数的结果设置为全局变量?例如,我想将数组“颜色”中的第一个“颜色”设置为全局变量“颜色”(我知道这个例子没有多大实际意义,但它只是为了说明我的问题):如何将函数的结果设置为全局变量
var color = "";
function selectColor() {
var colors = ["blue","red","green","yellow"];
var color = colors[0];
return color;
}
window.onload = function() {
selectColor();
alert(color);
}
补充说明:JavaScript变量作用域是基于函数的。如果你在一个函数内声明了一个带有var的变量,它与同名的全局变量是* * *不同。如果你没有用var声明一个变量,则暗示它是全局的,不管它是否在函数之外声明。 – Matt 2010-03-25 15:25:06
是的,这是我的问题,我混淆了变量,因为我在函数内再次声明它,谢谢。 – Choy 2010-03-25 15:27:04
在这个例子中,你不需要'返回颜色;','selectColor()'函数只需设置全局变量而不是返回结果。 对于这样简单的事情来说很好,但是如果您在设置全局变量之前需要使用变量,我会将颜色保留为局部变量并返回结果。 – Ben 2010-03-25 15:29:34