jquery - 从数组对象中获取值

时间:2016-08-17 22:46:49

标签: javascript jquery arrays object keyvaluepair

我有一个看起来像这样的对象数组

var result = [{"id":"1","price":"20.46"},{"id":"2","price":"40.00"}]

现在我可以通过

访问它
result[0].price 

但是我要做的是遍历对象数组,并将id与用户输入的id进行比较并返回匹配值。因此索引应该是无关紧要的

我试图遍历对象数组,但我可能犯了一些语法错误而没有得到任何回复。

var userinputid = 1;

result.forEach(function(){
     if(userinputid == result.id){
     alert(result.price);
  });

如何解决这个问题。

3 个答案:

答案 0 :(得分:6)

而不是result.id,您应该使用currentElementInLoop.id



var result = [{"id":"1","price":"20.46"},{"id":"2","price":"40.00"}]
var userinputid = 1;

result.forEach(function(e) {
  if (userinputid == e.id) alert(e.price);
});




答案 1 :(得分:1)

你错过了一个结束括号。并且您需要使用元素值参数或索引参数。 尝试

result.forEach(function (elementVal) {
    if (userinputid === elementVal.id){
        alert(elementVal.price);
    }
});

答案 2 :(得分:1)

你忘了索引:



var result = [{"id":"1","price":"20.46"},{"id":"2","price":"40.00"}]
var userinputid = 1;

result.forEach(function(e, index){
  if(userinputid == result[index].id){
    alert(result[index].price);
  };
});