1、判断数组中是否每个对象都不包含sex这个字段
let arr = [
{
name: 'Tom',
age: 22
},
{
name: 'Sun',
age: 23
},
{
name: 'Mack',
age: 25,
sex: '男'
},
]
arr.every(item => !('sex' in item))
返回结果:false
// 如果数组对象遍历后,存在某个对象元素,返回false,全都不存在返回true
2、js筛选数组对象的某个属性并且直接判断是否包含某个值
let arr = [{a: 1, b: 2, c:3}, {a: 4, b: 5, c: 6}];
let str = 3;
arr.map(a => a.c).indexOf(str);
返回结果:0
// 当前对比的元素值,如果在列表中的对象元素属性中存在包含相等的话,返回下标位置,不存在返回-1
3、js实现查找数组中对象的属性值是否存在
var arrList =
[
{
"rollnumber": 1,
"name": "dj",
"subject": "physics"
},
{
"rollnumber": 2,
"name": "tanmay",
"subject": "biology"
},
{
"rollnumber": 3,
"name": "amit",
"subject": "chemistry"
}
];
function arrDemo(arr, key, value) {
for (var i = 0; i < arr.length; i++) {
// 遍历每个数组的对象元素的某个key值和value进行对比,相等返回当前元素下标,不等的话,返回null
if (arr[i][key] == value) {
return i;
}
}
return null;
}
var index = arrDemo(arrList, "rollnumber", 1);
console.log(index);
返回结果: 0
// 遍历每个数组的对象元素的某个key值和value进行对比,相等返回当前元素下标,不等的话,返回null