javascript中的数组迭代

时间:2017-11-30 18:19:08

标签: javascript arrays

Array: {3412124539: 1, 3412124540: 1, 3412124577: 2, 3412124590: 1, 3412124602: 1, 3412124605: 1, 3412124607: 1, 3412124617: 1, 3412124629: 1, 3412124630: 1, 4709502367: 1, 4709502349: 1, 4709502326: 1, 4708510268: 1, 4708510060: 1, …}

我想搜索3412124577。 如果值为2 然后回来。

我该怎么办?当我尝试迭代Array[30]时。它给了我错误。 我应该怎么做搜索。

2 个答案:

答案 0 :(得分:0)

也许它可能会奏效。

$.each(yourVariableHere, function( index, value ) {
    if(index == 2){
         console.log("I found it.");
    }
});

答案 1 :(得分:0)

所以我知道你在谈论你的帖子中的数组,但是你的"数组"你给我们的实际上是一个对象。主要的震惊,我知道......请注意数组[]与对象{}括号。

但在你的情况下,这实际上并不是件坏事。您根本不需要遍历数组中的所有项目!让我告诉你。

您可以在javascript中通过数组表示法访问对象的键。 (仍在关注?)基本的方法是:

object['key']           //accessing by array notation

object.key              //accesing by dot notation

既然你正在谈论回归,那么我假设你在谈论功能。通过使用数组表示法

检查名为collection的对象,查看以下搜索函数



var collection = {3412124539: 1, 3412124540: 1, 3412124577: 2, 3412124590: 1, 3412124602: 1, 3412124605: 1, 3412124607: 1, 3412124617: 1, 3412124629: 1, 3412124630: 1, 4709502367: 1, 4709502349: 1, 4709502326: 1, 4708510268: 1, 4708510060: 1}

function search(inWhat, forWhat, equalsWhat){
  if(inWhat[forWhat] == equalsWhat)
    return 'returned cause '+forWhat+' is '+equalsWhat;
}

var returnValue = search(collection, 3412124577, 2);

// ---- outputting the returnValue here
document.write(returnValue);