JS数组中查找指定属性值及去重匹配方法

作者:函数茶馆时间:2026-10-25 19:28:26浏览:559

本文介绍如何在JavaScript对象数组中通过find方法查找特定属性值,判断其存在性。同时演示利用reduce结合对象键值判断实现多属性完全一致的数组去重与匹配提取,提供实用代码示例供参考。

对象数组中匹配某个属性值

假设存在一个JavaScript对象数组,定义如下变量:

var a = [
    {
        'id' : 2,
        'name' : 'xxxx',
    },
    {
        'id' : 3,
        'name' : 'bbbbb',
    },
];
var b = 3;

现需判断变量b的值是否存在于数组a中对象的id属性内。若存在则返回true,否则返回false。

具体实现代码如下:

if (a.find(item => {return item.id == b}) != undefined)
{
    return true;
} else {
    return false;
}

使用find方法遍历数组,当满足条件item.id等于b时,返回第一个匹配的对象;若未找到匹配项,则返回undefined。

从对象数组中提取属性值完全相同的项

vvar ary=[
                {"RaDate":'2021-09-08',"Type":'Morning2','title':'测试2'},
                {"RaDate":'2021-10-08',"Type":'Morning2','title':'测试1'},
                {"RaDate":'2021-09-08',"Type":'Morning2','title':'测试2'},
                {"RaDate":'2021-10-08',"Type":'Morning2','title':'测试2'},
               ]
            let obj = {};
            var result = ary.reduce((cur, next,index) => {
                var key = next.RaDate + next.Type+ next.title
                obj[key] ?cur.push(next): obj[key] = true
                return cur;
            }, [])
            console.log(result)

对象数组中匹配某个属性值

以上为个人经验总结,希望能给大家一个参考,也希望大家多多支持本站。

作者最新文章