1.Array filter()方法(返回结果是根据return后条件筛选)
//filter()方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素
//filter()不会对空数组进行检测
//filter()不会改变原始数组
如:
let arr = [20,25,30];
let res = arr.filter(function(i){
return i>20;
})
// [25,30]
2.Array.some()方法(返回结果是布尔值)
//some会遍历数组中的每个元素,让每个值都执行一遍callback函数,不会对空数组进行检测, 不会改变原始数组。如果有一个元素满足条件,返回true , 剩余的元素不会再执行检测。如果没有满足条件的元素,则返回false。
if(this.flag){
this.books.some(item=>{
if (item.id == this.id) {
item.name = this.name;
// 节省循环次数 some方法 遇到true后会终止循环
return true;
}
});
}
//注意this的指向问题,箭头函数的this指向父级作用域的this,vue实例本身