js判断数组中对象是否存在某个值

The first — some方法数组中满足提供的测试函数的第一个元素的true.否则返回 false

var arr = [{
    name: "小提莫",
    value: "0"
}, {
    name: "小鲁班",
    value: "1"
}]
var result_one = arr.some(function(item) {
    if (item.name == "小提莫") { //item.name == "小百里守约"
        return true;  //返回false
    }
})
console.log(result_one );

The second —find() 方法返回数组中满足提供的测试函数的第一个元素的值。否则返回 [undefined]

var arr1 = [{
    name: "小提莫",
    value: "0"
}, {
    name: "小鲁班",
    value: "1"
}]
var result_two= arr1 .find((v) => {
    return v.value ===  '0'; // return v.value ===  '9'  返回undefined
});
console.log(result_two);

The third—findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引。否则返回-1

var arr2= [{
    name: "小提莫",
    value: "0"
}, {
    name: "小鲁班",
    value: "1"
}]
var result_third= arr2 .findIndex((v) => {
    return v.value ===  '0';//return v.value ===  '9'  返回-1
});
console.log(result_third);

The four—键值对(去重)

var arr3= [{
    name: "小提莫",
    value: "0"
}, {
    name: "小鲁班",
    value: "1"
}, {
    name: "小龙虾",
    value: "2"
}, {
    name: "小龙虾",
    value: "2"
}]
function unique(arr){
   let obj = {};
   return arr.filter((item, index, array) =>{
        return obj.hasOwnProperty(typeof item.value + JSON.stringify(item.value)) ? 
        false : (obj[typeof item.value + JSON.stringify(item.value)] = true)
        })
   }
console.log(unique(arr3)); 
/*
 var arr3= [{
     name: "小提莫",
     value: "0"
  }, {
     name: "小鲁班",
     value: "1"
  }, {
     name: "小龙虾",
     value: "2"
  }]
*/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容