2013-02-24 222 views
0

我不確定如何將這個數組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?

+0

可以運行'JSON.stringify(富)'並張貼在這裏輸出的默認值? – 2013-02-24 18:41:37

回答

0

如果您不想更改getHoliday(),的參數,則可以創建另一個接收所有3個參數的函數,將其中的兩個傳遞給getHoliday(),並處理該數組。

function getHolidayWithArray(monthSelected, theday, fooArray) { 

    getHoliday(monthSelected, theday); // invoke getHoliday 

    // work with fooArray 
} 
0

向getHoliday添加附加參數不會影響調用它的其他函數。

所以,你可以額外的參數添加到getHoliday並使用一些條件邏輯來設置默認值,或忽略它,如果它是undefinedwindow設置foo

0

您可以在參數添加到getHoliday函數的結尾,像這樣:這是隻有兩個參數調用

function getHoliday(monthSelected, theday, foo) { 
    //... 
} 

什麼東西都可以繼續運作,並fooundefined。所以,你可能會想檢查並holidayName在這種情況下,例如:

var holidayName = foo || "Some default"; 
相關問題