美文网首页
es6 个人总结

es6 个人总结

作者: wangwing | 来源:发表于2019-04-30 14:52 被阅读0次
  1. let 和 const
    let 和 const 都是块级作用域
    1)let 变量可更改,
    2)const变量不能更改否则报错, 如果是更改该变量里面的值,是可以更改

  2. reduce 方法

    let arr = [0,2,3,4,5,6];
    let a = arr.reduce((pre,cur,index, arr)=>{
        return pre
    })
    console.log(a);  //pre: 数组的第一个值
    如果reduce加第二个参数,如:reduce((pre,cur)=>{}, {}) 第二个参数就是pre的值
    
  3. every 方法 相当于&&的关系,遇到false就停止

    let arr = [3,3,3,4,5];
    let result = arr.every((item,index)=> {
        return item > 2;
    });
    console.log(result);  //返回3,3,3,4,5 true; 只要有一项不符合就返回false 
    
    
  4. some 方法,相当于||, 遇到true就停止

    let arr = [1,2,3,4,5];
    let result = arr.some((item,index)=> {
        console.log(item);
        return item > 2;
    });
    console.log(result);  //返回1,2,3,true
    
  5. ES6中新增的数组知识
    fill : 填充不包含第三个位置,比如下面相当于是替换了索引2,3的内容

      let arr=[0,1,2,3,4,5,6,7,8,9];
      arr.fill('a',2,4);
      console.log(arr);   //输出[ 0, 1, 'a', 'a', 4, 5, 6, 7, 8, 9 ]
         
    
  6. es7: async和await,

    function normalFuncInterval(time,arg){
            setTimeout(()=>{
                console.log(arg); //按最小的时间来最先显示
            },time)
            return arg
        }
        // async 用来表示函数是异步的,定义的函数会返回一个promise对象,使用.then方法添加回调函数
        async function basicDemo() {
            let result0 = await normalFuncInterval(1000, "1000");
            let result1 = await normalFuncInterval(500, "500");
            let result2 = await normalFuncInterval(100, "100");
            // 按console.log先后顺序来显示
            console.log("0: " + result0);
            console.log("2: " + result2);
            console.log("1: " + result1);
        }
        basicDemo()
    

    //输出顺序,先执行await,然后再执行正常的js方法
    0: 1000
    2: 100
    1: 500
    100
    500
    1000
    转载:https://segmentfault.com/a/1190000011526612?utm_source=tag-newest#articleHeader8

相关文章

网友评论

      本文标题:es6 个人总结

      本文链接:https://www.haomeiwen.com/subject/rrkvnqtx.html