Vue3+TS如何判断对象类型数组中包含某一个值
例子: 如下所示,arrA 是一个数组. 它的每一个元素都是一个对象
const arrA = [
{name:name1,code:code1},
{name:name2,code:code2},
{name:name3,code:code3},
{name:name4,code:code4},
此时我有一个数组B
const arrB = [
{name:nameA,code:codeA},
{name:name2,code:code2},
{name:nameC,code:codeC},
{name:name4,code:code4},
此时我想知道我数组A中是否包含数组B中的对象O
.如果没有code内容=>就把对象O加到数组A中,
如果包含code内容=>对象O就不加入到数组A
此时可以使用数组API some
//首先循环数组A
for (let index = 0; index < arrA .length; index++) { //然后循环数组B arrB .forEach((element: any) => { //然后判断数组A和B中的code是否相同 if (!arrA[index] .some((item: any) => item.code === element.code)) { //如果不同就加入到数组A中 arrA.push(element); } }); } } 例子可能不恰当.核心思想是 数组API some 更具体的使用方式可以继续百度var result = arr.some(item=>{
if(item.name==='张三'){
return true
}
})
// if 可以省略
var result = arr.some(item=>item.name==='张三')
console.log(result) // 如果arr数组对象中含有name:'张三',就会返回true,否则返回false