如何将数组传递给Javascript中的另一个函数?
问题描述:
我不确定如何将这个数组foo
传递给我需要的另一个函数。这里是我的设置:如何将数组传递给Javascript中的另一个函数?
if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200)
{
var xmlResponse = XMLHttpRequestObject.responseXML;
var foo = parseXML(xmlResponse);
dataOutput.innerHTML += foo;
}
foo = (2,4,Party---12:00,2,22,Eventalist Launch---6:00,2,18,Play Day---12:00)
JSON = ["2","4","Party---12:00","2","22","Eventalist Launch---6:00","2","18","Play Day---12:00"]
所以我需要这个数组传递到HolidayName变量。我不确定是否可以移动这个数组而不改变getHoliday的参数。这是因为这个函数在其他地方也被调用,我不能混淆不同的参数。有没有办法建立一个“get”函数来获得我的数组foo?
答
如果您不想更改getHoliday(),
的参数,则可以创建另一个接收所有3个参数的函数,将其中的两个传递给getHoliday()
,并处理该数组。
function getHolidayWithArray(monthSelected, theday, fooArray) {
getHoliday(monthSelected, theday); // invoke getHoliday
// work with fooArray
}
答
向getHoliday添加附加参数不会影响调用它的其他函数。
所以,你可以额外的参数添加到getHoliday
并使用一些条件逻辑来设置默认值,或忽略它,如果它是undefined
或window
设置foo
。
答
您可以在参数添加到getHoliday
函数的结尾,像这样:这是只有两个参数调用
function getHoliday(monthSelected, theday, foo) {
//...
}
什么东西都可以继续运作,并foo
将undefined
。所以,你可能会想检查并holidayName
在这种情况下,例如:
var holidayName = foo || "Some default";
可以运行'JSON.stringify(富)'并张贴在这里输出的默认值? – 2013-02-24 18:41:37