Array.find按特定值搜索

时间:2017-02-27 18:21:41

标签: javascript

我有一个我想找到的本地变量..

<body>
<button onclick="myFunction()">Try it</button>
<script>
var ages = [{a:"danielhason",b:"1"},{a:"aanielhason",b:"2"},{a:"banielhason",b:"3"),{a:"zanielhason",b:"4"}];
var z = "1";

function myFunction() {
    document.getElementById("demo").innerHTML = (ages.find(function (age) { return age == z;})).a;
}
</script>
</body>

3 个答案:

答案 0 :(得分:0)

<body>
<button onclick="myFunction()">Try it</button>
<script>
var ages = [{a:"danielhason",b:"1"},{a:"aanielhason",b:"2"},{a:"banielhason",b:"3"),{a:"zanielhason",b:"4"}];
var z = "1";

function myFunction() {
    document.getElementById("demo").innerHTML = (ages.find(function (age) { return age.b == z;})).a;
}
</script>

</body>

您只需将.b添加到您的查找年龄。

答案 1 :(得分:0)

我的意思是,这里有几个问题,但我注意到的第一个是这一行:

 document.getElementById("demo")

您没有使用id&#34;演示&#34;

的元素

下面的Smit的答案也是正确的。这里有很多问题。

答案 2 :(得分:0)

由于cms-content_de.impex是一个对象数组,因此必须对其进行迭代。让我们说agesv数组中的每个对象。然后,如果ages等于v.b值(1),则必须使用条件 - 记录该对象z值 - a

注意:保持代码清洁,使用换行符。

&#13;
&#13;
v.a
&#13;
var ages = [{
  a: "danielhason",
  b: "1"
}, {
  a: "aanielhason",
  b: "2"
}, {
  a: "banielhason",
  b: "3",
}, {
  a: "zanielhason",
  b: "4"
}];

function myFunction(ages) {
  var z = "1";
  ages.find(function(v) {
    if (v.b == z) {
      console.log(v.a)
    }
  })
}

myFunction(ages);
&#13;
&#13;
&#13;