gpt4 book ai didi

javascript - 如何在数组中查找元素

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:12:10 25 4
gpt4 key购买 nike

我真的是 javascript 的新手,我有一个对象数组。

var cart = [
{ id: 1, price: 2 },
{ id: 2, price: 1 }
];

我正在使用 for 循环查找 ID:

for (var i = 0; i < cart.length; i++) {
if (cart[i].id === id) {
return cart[i]
}
}

return null;

我知道有像 find() 这样的函数,但我不太确定如何使用它。谁能帮忙?

最佳答案

find , 你可能需要 babel ,但只是您需要的代码:

ES6

const id = 1;
const found = cart.find(item => item.id === id)

Vanilla

var id = 1;
var found = cart.find(function(item) {return item.id === id})

find 接受一个函数(在我们使用 es6 的例子中:() => {} 是一个匿名函数),并将它应用于列表中的每个项目,在找到第一个匹配项之前,它如何知道它何时匹配:一旦您的函数返回 true,它就会切断循环并返回项目。

然而

另一个选项,它不使用 find 但可能比传统的 for 循环更具可读性:

var id = 1;
for(var item in cart) {
if(item.id == id) {
return item;
}
}
return null

还有大量的库可以帮助您以不同的方式实现这一目标,例如:underscore.js , lodash ,我就不展开了,有兴趣的可以看看。

关于javascript - 如何在数组中查找元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41968610/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com