forEach
1.循环数组中每一个元素并采取操作
2.无法break中途跳出循环
3.不支持return操作输出,return只用于控制循环是否跳出当前循环
4.没有返回值
this.list.forEach(item => {
item.codeshow = false
})
map
1.创建新数组
2.不改变原数组
3.输出的是return什么就输出什么新数组
4.可以有返回值(return),也可以没有返回值(return)
//无返回值 原数组改变
this.data.map(async v => {
if (v.city) {
v.cityName = '你的名字'
}
})
//有返回值 原数组不变 有新数组
var newData = this.data.map(async v => {
return v.cityName = '你的名字'
})
filter
1.创建新数组
2.不改变原数组
3.输出的是判断为true的数组元素形成的新数组
//筛选并返回daataEx里item.system不等于base的数据 (数组)
var dataExNew = dataEx.filter(item => {
return item.system != 'base'
})
some
1.不创建新数组
2.不改变原数组
3、输出的是判断为true则马上跳出循环并return Boolean
(本人未用过,暂不演示)
every
1.不创建新数组
2.不改变原数组
3.输出的是判断为false则马上跳出循环并return成Boolean
(本人未用过,暂不演示)
find
1.不创建新数组
2.不改变原数组
3.输出的是一旦判断为true则跳出循环输出符合条件的数组元素
看了上面就知道了何时用何种函数了