[英]How to find the row and column of a specific element in a multidimensional array using javascript
[英]Find specific element in array javascript
我有一個包含n個數組的數組A。 n個數組中的每個數組都包含兩個元素。 第一個是ID,第二個是對象。 有關更多詳細信息,請參見以下示例:
A = [ [100, object1], [22, object2], [300, object3]]
對於給定的ID,我想獲取關聯的對象。 例如,對於id = 22
,我想獲取object2
。
循環,檢查並返回
function getById(id) {
for (var i = 0; i < A.length; i++) {
if (A[i][0] == id) {
return A[i][1];
}
}
return false;
}
這是一種非常基本的方法。 遍歷A
,繼續檢查每個數組的第一個成員是否與您的id匹配,並在匹配的情況下返回關聯的對象。
function returnObjectById(id) {
for (var i=0; i< A.length; i++) {
if (A[i][0]==id) {
return A[i][1];
}
}
return false; // in case id does not exist
}
在Coffeescript中:
returnObjectById = (id) ->
i = 0
while i < A.length
if A[i][0] == id
return A[i][1]
i++
false
# in case id does not exist
CoffeeScript版本可能像:
find_in = (a, v) ->
return e[1] for e in a when e[0] == v
那么你可以說:
thing = find_in(A, 22)
如果找不到v
,則會得到undefined
。
a中的for e in a
是一個基本的for循環,那么when
子句僅在其條件為true時才執行主體。 因此,該循環在功能上等效於:
for e in a
if e[0] == v
return e[1]
精美的手冊涵蓋了所有這一切。
在CoffeeScript中,您可以使用JS到CF的過渡
getById = (id) ->
i = 0
while i < A.length
if A[i][0] == id
return A[i][1]
i++
false
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.