javascript - 在多维数组中搜索值

标签 javascript arrays multidimensional-array

我有一系列项目:

items = [{name: "microphone", cost:1000, improvement:1},
     {name: "guitar", cost:5000, improvement: 10},
     {name: "keyboard", cost: 10000, improvement: 50},
     {name: "band member", cost: 20000, improvement: 100}
    ];

我想通过提供项目的名称来找到项目的“改进”。

我已经尝试过这个:

var upgrade = items.findOne({ name: nameInput });

但我收到错误:

Exception while invoking method 'buy' TypeError: Object [object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object] has no method 'findOne'

如果我无法使用 findone 是否有其他方法可以实现我的目标?

最佳答案

试试这个:

  items = [{name: "microphone", cost:1000, improvement:1},
         {name: "guitar", cost:5000, improvement: 10},
         {name: "keyboard", cost: 10000, improvement: 50},
         {name: "band member", cost: 20000, improvement: 100}
        ];

如果您的商品名称是:

itemname = "microphone";    
    items.forEach(function(obj) {
        if(obj.name == itemname){
         return obj.improvement;
        }
    });

关于javascript - 在多维数组中搜索值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35178187/

相关文章:

java - 寻找一种有效的方法来对 3D 数组的周围值求和

C:传递二维整数数组

javascript - Changed.jstree 事件在类方法内部的 jstree 中不起作用

javascript - 如何使用express在nodejs中执行promise

javascript - 单击后更改按钮链接

javascript - 如何在ckeditor中添加自定义config.js

c - 使用 C 返回数组

ios - 异步函数返回正常,但数组变为空

c++ - 如何在内部 while 循环中跳出 for 循环

arrays - 将文件读入多维数组并跳过包含 Perl 中某些信息的行的最佳方法