遍历数组多种方法 之 (说法合并)

map()

. map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值,并没有改变原来的数组

map()方法按照原数组元素顺序依次处理元素

注意: map() 不会对空数组进行检测

注意:map() 不会改变原始数组

. map()有返回值

map() 和 forEach都不会对空数组进行检测

map() 不会改变原始数组

. map()函数,遍历数组每个元素 并回调操作 需要返回值 返回值组成新的数组 原数组不变

每个元素都是回调函数返回的值

. map有眏射,即支出return相当于原数组克隆一份 把克隆的每一项改变 并返回一个新数组 ,这个新数组的每一个元素都是原数组元素执行了回调函数之后的返回值 也不影响原数组

​
let arr = [1, 2, 3, 4];
let newArr = arr.map(item => {
    return item * 2;
});
console.log(arr); // [1, 2, 3, 4]   原数组保持不变
console.log(newArr); // [2, 4, 6, 8] 返回新数组

​

filter()

一. filter方法的return只有两种情况, true/fasle ;如果返回true就保留这个数据,如果返回false 就删除这个数据 也是返回新数组,不改变原数组 

. 将所有元素进行判断,将满足条件的元素作为一个新的数组返回 , 原数组不变

注意:filter()不会对空数组进行检测

注意: filter()不会改变原始数组

. 接收一个回调函数作为参数 , 返回值是一个新数组

.filter()过滤,即对数组元素的一个条件筛选 他提供一个回调函数

. filter ,过滤即对数组元素的一个条件筛选 他提供一个回调函数 ,参数依次为处于当前循环的元素 , 该元素下标 数组本身 三者均可选 

默认返回一个数组 

原数组的元素执行了 回调函数之后返回值若为true 则会将这个元素放入返回的数组中

filter方法不改变原数组

var arr = [1, 2, 3, 4, 5];
  let ary = arr.filter((item, index) => {
    return item > 3
  })
  console.log(ary);//[4,5]

every()

一. 将所有元素进行判断 返回一个布尔值 原数组不变 

     如果所有元素都满足判断条件 , 则返回true , 否则返回false

    注意:every()不会对空数组进行检测

    注意:every()不会改变原始数组

二. 简单的说就是如果回调函数每次返回的值都是true的话,则every()返回true ,否则为false

三. 如果每一项返回 true ,则返回true (全部符合条件),否则返回false

四. every()是对数组中每一项运行给定函数 , 如果该函数的每一项返回 true,则最后返回 true

五. 数组的每一个元素都会执行回调函数 , 当返回值全部为true时 ,every方法会返回true,只要有一个为false ,every方法返回false ,

不改变原数组

let arr = [1, 2, 3, 4];
let newArr1 = arr.every(item => {
    return item > 2;
});
let newArr2 = arr.every(item => {
    return item < 5;
});
console.log(arr); // [1, 2, 3, 4]   原数组保持不变
console.log(newArr1); // false
console.log(newArr2); // true

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值