Javascript 如何将函数的结果设置为全局变量
我确信这非常简单,我画了一个巨大的空白,但是如何将函数的结果设置为全局变量呢 例如,我想将数组“colors”中的第一个“color”设置为全局变量“color”(我知道这个示例没有太多实际意义,但只是为了说明我的问题):Javascript 如何将函数的结果设置为全局变量,javascript,global-variables,Javascript,Global Variables,我确信这非常简单,我画了一个巨大的空白,但是如何将函数的结果设置为全局变量呢 例如,我想将数组“colors”中的第一个“color”设置为全局变量“color”(我知道这个示例没有太多实际意义,但只是为了说明我的问题): 如果您在selectColor()函数中从color中删除var声明,它应该对您有效,如下所示: var color = ""; function selectColor () { var colors = ["blue","red","green","yellow
如果您在
selectColor()
函数中从color
中删除var
声明,它应该对您有效,如下所示:
var color = "";
function selectColor () {
var colors = ["blue","red","green","yellow"];
color = colors[0];
return color;
}
window.onload = function () {
selectColor ();
alert(color);
}
如果您在
selectColor()
函数中从color
中删除var
声明,它应该对您有效,如下所示:
var color = "";
function selectColor () {
var colors = ["blue","red","green","yellow"];
color = colors[0];
return color;
}
window.onload = function () {
selectColor ();
alert(color);
}
回答你的问题:
var color = "";
function selectColor () {
var colors = ["blue","red","green","yellow"];
var color = colors[0];
return color;
}
window.onload = function () {
selectColor ();
alert(color);
}
var color = "";
function selectColor () {
var colors = ["blue","red","green","yellow"];
color = colors[0];
}
window.onload = function () {
selectColor ();
alert(color);
}
- var关键字在selectColor()内创建一个局部变量;你不会想要的
- 返回语句不是必需的;你没有抓住它
var color = "";
function selectColor () {
var colors = ["blue","red","green","yellow"];
return colors[0];
}
window.onload = function () {
color = selectColor ();
alert(color);
}
回答你的问题:
var color = "";
function selectColor () {
var colors = ["blue","red","green","yellow"];
var color = colors[0];
return color;
}
window.onload = function () {
selectColor ();
alert(color);
}
var color = "";
function selectColor () {
var colors = ["blue","red","green","yellow"];
color = colors[0];
}
window.onload = function () {
selectColor ();
alert(color);
}
- var关键字在selectColor()内创建一个局部变量;你不会想要的
- 返回语句不是必需的;你没有抓住它
var color = "";
function selectColor () {
var colors = ["blue","red","green","yellow"];
return colors[0];
}
window.onload = function () {
color = selectColor ();
alert(color);
}
添加点:JavaScript变量范围基于函数。如果在函数中声明一个带有var的变量,则它不同于同名的全局变量。如果不使用var声明变量,则意味着它是全局变量,无论它是否在函数外部声明。是的,这是我的问题,我混淆了变量,因为我在函数内部再次声明了它,谢谢。在本例中,您不需要
返回颜色
,selectColor()
函数只需设置全局变量,而不返回结果。对于这样简单的事情很好,但是如果您需要在将变量设置为全局变量之前使用该变量,我会将color保留为局部变量并返回结果。如果在函数中声明一个带有var的变量,则它不同于同名的全局变量。如果不使用var声明变量,则意味着它是全局变量,无论它是否在函数外部声明。是的,这是我的问题,我混淆了变量,因为我在函数内部再次声明了它,谢谢。在本例中,您不需要返回颜色
,selectColor()
函数只需设置全局变量,而不返回结果。对于这样简单的事情很好,但是如果在将其设置为全局变量之前需要使用该变量,我会将color保留为局部变量并返回结果。