![](/img/trans.png)
[英]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.