判断一个数组中所有对象的某个属性值是否相同

刚玩js,小白一枚,请大佬多多指教。
数据是这样的

 let mobilePhoneList = [

        {

          number: '123',

        }, {

          number: '123456',

        }, {

          number: '123456789',

        },

      ],

这个数组里可能会有很多数据。
我想实现的是,判断每个对象里number属性的值,只要其中任何两个相等就返回true,否则返回false。(并不是其他number只跟第一个或第二个相比较,是所有的number都要相互比较)


回答:

let mobilePhoneList = [

{

number: '123',

}, {

number: '123456',

}, {

number: '123456789',

},

]

const res = mobilePhoneList.some(r => mobilePhoneList.filter(r1 => r1.number===r.number).length > 1)

console.log(res)


回答:

function hasEqualNumber(list) {

const nums = new Set

for(const item of list) {

if(nums.has(item.number)) return true;

nums.add(item.number)

}

return false;

}


回答:

function hasQqualItems (objArr) {

let temp = {};

for (const obj of objArr) {

if (temp[obj.number]) {

return true;

}

temp[obj.number] = true;

}

temp = null;

return false;

}


回答:

 let mobilePhoneList = [

{

number: '123',

},{

number: '123456',

}, {

number: '123456',

}, {

number: '123456789',

},

];

mobilePhoneList.some((cur,idx,arr)=>arr.slice(idx+1).find(item=>cur.number==item.number));

判断一个数组中所有对象的某个属性值是否相同
判断一个数组中所有对象的某个属性值是否相同

以上是 判断一个数组中所有对象的某个属性值是否相同 的全部内容, 来源链接: utcz.com/p/936001.html

回到顶部