根据属性值在数组中查找特定的 JavaScript 对象
考虑下面的对象数组:
var jsObjects = [ {a: 1, b: 2}, {a: 3, b: 4}, {a: 5, b: 6}, {a: 7, b: 8} ];
我们如何根据以下值检索特定对象,例如{a: 5, b: 6}一个特定的属性,比如“b”,而不诉诸 for...in 循环?
使用 Array.filter()
Array.filter()方法提供了一种方便的解决方案。它允许我们根据指定条件过滤对象数组。在这种情况下,我们可以按如下方式过滤 jsObjects 数组:
var result = jsObjects.filter(obj => { return obj.b === 6 })
filter() 方法返回一个包含满足条件的对象的新数组。在我们的例子中,它将返回一个包含单个对象的数组:{a: 5, b: 6}。
示例
下面的代码演示了使用Array.filter() 查找所需的对象:
const jsObjects = [ {a: 1, b: 2}, {a: 3, b: 4}, {a: 5, b: 6}, {a: 7, b: 8} ] let result = jsObjects.filter(obj => { return obj.b === 6 }) console.log(result)
此代码将输出:
[{a: 5, b: 6}]
以上是如何在不循环的情况下通过属性值查找数组中特定的 JavaScript 对象?的详细内容。更多信息请关注PHP中文网其他相关文章!