分别传入,数组,需要替换或者添加的对象,用于判断的key值
//判断对象数组中是否有某个对象,有则替换无则添加
formateArrObjData(initialArr, obj, pro) {
// 判定数据是否为数组
if (!(initialArr instanceof Array)) {
return [] //'请传入正确格式的数组'
}
// 判定数据是否为对象
if (!(obj instanceof Object)) {
return [] //'请传入正确格式的对象'
}
if (!pro) {
return [] //'请传入正确格式的属性名'(用于判断的key值)
}
let index = initialArr.findIndex((val) => val[pro] === obj[pro])
let tempArr = initialArr
// 如果有就替换 没有就添加
if (initialArr.findIndex((val) => val[pro] === obj[pro]) !== -1) {
tempArr.splice(index, 1, obj);
} else {
tempArr.push(obj);
}
return tempArr
},
//使用
this.formateArrObjData(this.arrplayTime,playtimes,'id')