2014-02-28 47 views
0

我有一個函數,它對可變數量的對象對/三元組進行操作。現在我將這些對象傳遞給一個數組,如[[..],[..],...]。這似乎並不乾淨,因爲我需要使用數組索引來引用這些對象,如arr[i][0].doSomething()。有沒有更乾淨的方法來做到這一點?如何傳遞一個值對的數組乾淨

+2

你能給一些樣本數據嗎?沒有看到一個例子,很難知道你是否可以重構你的數據結構 – Dexter

回答

0

如果您願意,您可以使用可變數量的參數。

function func() { 
    var arg; 
    for (var i = 0; i < arguments.length; ++i) { 
     arg = arguments[i]; 
     // Handle arg   
    } 
} 

func([1, 2], [3, 4]); 

作爲進一步的改進,可以使用對象而不是對/三,但是這一切都取決於你的數據的結構:

func({prop1: 1, prop2: 2}, {prop1: 3, prop2: 4}); 
0
,如果你在一個數組有對象

,總是使用相同的類/類型。這是做這件事的最好方式(就像在Java ArrayList中一樣)。