[英]how can you make an array save as a new object each time a function is executed and not overwrite my old array
[英]How can I make an array of object in my function parameter call a function for each object?
我創建了以下checkGrid
函數,該函數先進行計數,然后再進行另外兩個參數的處理。 這是一個在selectOption調用中進行硬編碼的解決方案,並且不夠靈活:
checkGrid = function(expectCount, typeParam, selectParam) {
it('Check', function () {
selectOption('examTypeSelect', typeParam).click();
selectOption('examStatusSelect', selectParam).click();
});
}
checkGrid(10, '*', '*');
現在,我想使其更加靈活,以便它接受任意數量的selectOption函數的參數。 所以我在想可以這樣稱呼的東西。 在這里,我需要的是checkGrid
函數調用selectOption
三次:
checkGrid(10, [{'examTypeSelect','*'}
{'examStatusSelect', '*'},
{'abcSelect','29'}]);
我怎樣才能接受作為checkGrid的第二個參數的數組對象,並使其根據數組中有多少個元素來調用任意數量的selectOption
函數?
通過在數組上循環並使用.apply
調用具有可變數量參數的每個函數。
checkGrid = function(expectCount, stuff) {
it('Check', function () {
for (var i = 0; i < stuff.length; ++i) {
selectOption.apply(this, stuff[i]).click();
}
});
}
您不會使用建議的語法來調用它(這是無效的),而是
checkGrid(10, [
['examTypeSelect','*'],
['examStatusSelect', '*'],
['abcSelect','29','and','perhaps','more','parameters']
]
);
最后,目前尚不清楚expectCount
應該做些什么,但是我把它留在那里了,因為您的原始代碼大概可以對它做些什么 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.