按属性值从对象数组中获取 JavaScript 对象
2022-08-29 22:05:36
假设我有一个由四个对象组成的数组:
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
假设我有一个由四个对象组成的数组:
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
Filter
属性与值匹配的对象数组返回数组:
var result = jsObjects.filter(obj => {
return obj.b === 6
})
请参阅 Array.prototype.filter() 上的 MDN 文档
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)
Find
否则返回数组中第一个元素/对象的值。undefined
var result = jsObjects.find(obj => {
return obj.b === 6
})
请参阅 Array.prototype.find() 上的 MDN Docs
const jsObjects = [
{a: 1, b: 2},
{a: 3, b: 4},
{a: 5, b: 6},
{a: 7, b: 8}
]
let result = jsObjects.find(obj => {
return obj.b === 6
})
console.log(result)