jquery - 从数组对象中获取值

jquery - get value from array object

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

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

现在我可以通过

访问它
result[0].price 

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

我试图遍历对象数组,但我可能犯了一些语法错误,但什么也没得到。

var userinputid = 1;

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

如何解决这个问题。

您缺少一个端括号。并且您需要让函数使用元素值参数或索引参数。 尝试

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

您应该使用 currentElementInLoop.id

而不是 result.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);
});

您忘记了索引:

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);
  };
});