es6遍历数组都有什么方法

es6遍历数组的方法:1、使用forEach(),可为数组中的每个元素调用一个函数;2、使用map(),对数组的每个元素调用指定的回调函数;3、使用filter();4、使用some();5、使用every();6、使用reduce()。

es6遍历数组都有什么方法

本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

ES6常见的数组遍历(迭代)方法

  • forEach
  • map
  • filter
  • some
  • every
  • reduce

声明一个需要遍历的对象

下面的代码都是要引用这个对象的

 let data = {
                code: 1,
                list: [{
                        id: 23,
                        title: "女装1",
                        price: 300
                    },
                    {
                        id: 24,
                        title: "女装2",
                        price: 200
                    },
                    {
                        id: 27,
                        title: "男装1",
                        price: 100
                    },
                    {
                        id: 29,
                        title: "男装2",
                        price: 400
                    },
                    {
                        id: 230,
                        title: "女装3",
                        price: 600
                    },
                    {
                        id: 40,
                        title: "童装1",
                        price: 700
                    }
                ]
            }

forEach

forEach的话不能使用break 与continue语句

    // 有二个参数 第一个参数是数值 第二个参数是索引值 
     data.list.forEach(function(item,index){
    console.log(item,index)
    
 //输出结果是{
//   {id: 23, title: "女装1", price: 300} 0
//  {id: 24, title: "女装2", price: 200} 1
//  {id: 27, title: "男装1", price: 100} 2
//  {id: 29, title: "男装2", price: 400} 3
//  {id: 230, title: "女装3", price: 600} 4
//  {id: 40, title: "童装1", price: 700} 5
//     }
    
     })

map

    //map 映射
    //遍历数据并返回一个新的数组 对数据的处理会返回原先对应的位置

    let arr = [2, 3, 6];
    let newArr = arr.map(function (val, index) {
        // 第一个参数是值 第二个参数是索引值
        console.log(arr)
    })

**遍历数据并返回一个新的数组 对数据的处理会返回原先对应的位置

要添加代码块 map 不可以解析同一个块级作用域

{}{}代表不同的块级作用域 分别在不同里面写**

// 浅拷贝
// 浅拷贝是指a把值 给了b 当b的值改变 a b 的值同时改变。
{
        let arr = [2, 3, 6];
        let newArr = arr.map(function (index, val) {
            // 第一个参数是索引值 第二个参数是值        })
        console.log(arr)// 0: 2
                        // 1: 3
                         // 2: 6    }
    {
        // 浅拷贝
        // 浅拷贝是指a把值 给了b 当b的值改变 a b 的值同时改变。
        let newArr = data.list.map((item, index) => {
            item.price = item.price * .6
            return item;
        });
        console.log(newArr)//打印的结果价格都是改变的,一样的{
        // 0: {id: 23, title: "女装1", price: 180}
        // 1: {id: 24, title: "女装2", price: 120}
        // 2: {id: 27, title: "男装1", price: 60}
        // 3: {id: 29, title: "男装2", price: 240}
        // 4: {id: 230, title: "女装3", price: 360}
        // 5: {id: 40, title: "童装1", price: 420}
        // }
        console.log(data.list)//同上    }

es6遍历数组都有什么方法

输出结果 深拷贝无论a b 值哪个改变 最终结果都不会随着a b的改变而改变

es6遍历数组都有什么方法

// 深拷贝 2(简单粗暴)

es6遍历数组都有什么方法
es6遍历数组都有什么方法

filter 过滤

es6遍历数组都有什么方法
过滤到价格小于300的 打印出来
es6遍历数组都有什么方法

some

定义的是找到一个值并且返回

es6遍历数组都有什么方法

es6遍历数组都有什么方法

every

这个返回的是如果其中一个为假 全部返回为假 返回的是每个条件

es6遍历数组都有什么方法
这个是输出的信息

es6遍历数组都有什么方法

reduce 用来实现累加的效果

输出的总和是 sum+val(数值)

// reduce 用来实现累加的效果 (常用于写购物车价格的累加)
// 声明一个数组 数组里面放数字 让其里面的数字显示为累加的总和
//  let arr=[200,200,100]
//  let result =arr.reduce((sum,val,index)=>{
//                          200+200 index 
//                          400+100 index
// sum是总加后的和 val是变量里面的值 index为索引值 
//     console.log(sum,val,index)
//     return sum +val;
//  })
//  console.log(result)

es6遍历数组都有什么方法

【相关推荐:、】

以上就是es6遍历数组都有什么方法的详细内容,更多请关注php中文网其它相关文章!

  • 声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

  • 相关标签:
    • 上一篇:
    • 下一篇:
    1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!10210454@qq.com
    2. 本站不保证所提供所有下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
    3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
    4. 如果您也有好的资源或教程,您可以投稿发布,成功分享后有RB奖励和额外RMB收入!

    磊宇堂正在使用的服务器 维护管理由磊宇云服务器提供支持

    磊宇堂 » es6遍历数组都有什么方法

    提供最优质的资源集合

    立即查看 了解详情