2017-04-05 64 views
1

JavaScript函數參數我已經做了搜索functionreturnvaluekeyid如果namevalue符合我keyparameter爲對象鍵

function search(array, key){ 
 
    for (var i=0; i < array.length; i++) { 
 
     if (array[i].name === key) { 
 
      return array[i].id; 
 
     } 
 
    } 
 
}

我想修改代碼,這樣我就可以插入「名稱」 key和「身份證」 key爲可修改parameters。這裏是我爲達成這個目的所做的代碼,但它好像是objectkeys不能是functionparameters

function search(array, key, compareKey, valueKey){ 
 
for (var i=0; i < array.length; i++) { 
 
    if (array[i].[compareKey] === key) { 
 
     return array[i].[valueKey]; 
 
    } 
 
} 
 
}

注:我主要使用嵌套在另一個for loop通過數據進行迭代,並且修改值並把它們輸出到另一個spreadsheetfunction。這個函數允許我遍歷另一個工作表中的數據,匹配值,並將匹配的值輸出到輸出電子表格中的正確行。

關於我能做什麼的任何建議我可以隨時修改對象的按鍵?

溶液(I不得不刪除 ''):

function search(array, key, compareKey, valueKey){ 
for (var i=0; i < array.length; i++) { 
    if (array[i][compareKey] === key) { 
     return array[i][valueKey]; 
    } 
} 

}

+0

陣列[I] [compareKey ]? –

+0

哇...是的,謝謝。 – WC123

回答

0

可以使用方括號此:

function search(array, key, compareKey, valueKey){ 
    for (var i=0; i < array.length; i++) { 
     if (array[i][compareKey] === key) { 
      return array[i][valueKey]; 
     } 
    } 
}