ES6基础

    // 1.变量作用域:变量在上面范围内是可用的
    {

    }
    // 为什么闭包可以解决问题:函数是一个作用域

    //1.属性的增强写法
    const name = 'why';
    const age = 18;
    const height = 1.88;

    // ES5的写法
    // const obj = {
    //     name:name,
    //     age:age,
    //     height:height,
    // }

    // es6写法
    const obj  = {
        name,
        age,
        height
    }
    console.log(obj);


    // 2.属性的增强写法
    // ES5的写法
    // const obj2 = {
    //     run :function(){

    //     },
    //     eat:function(){

    //     }
    // }
    const obj2 = {
        run (){

        },
        eat(){

        }
    }

    // filter/map/reduce
    // filter中的回调函数有个要求:必须返回一个boolean值
    // true:当返回true时,函数内部会自动将这次回调的n加入到新的数组中
    // false:当返回false是,函数内部会过滤掉这次的n
    // 1.filter函数的使用
    const nums = [10,20,111,222,444,40,50];

    let newNums = nums.filter(function(n){
        return n<100
    })
    console.log(newNums);

    // 2.map函数的使用
    // 20 40 80 100
    let new2Nums = newNums.map(function(n){
        return n*2
    });
    console.log(new2Nums);

    // 3.reduce函数的使用
    // reduce作用对数组中所有的内容进行汇总
    let total = new2Nums.reduce(function(preValue,n){
        return preValue+n
    },0)
    console.log(total);
    // 第一次:preValue 0    n 20
    // 第二次:preValue 20  n 40
    // 第二次:preValue 60  n 80
    // 第二次:preValue 140  n 100
    // 240

    // 代码整合 
    let total1 = newNums.filter(function(n){
        return n<100
    }).map(function(n){
        return n*2
    }).reduce(function(preValue,n){
        return preValue+n;
    },0)
    console.log(total1);
    let total2 = newNums.filter(n=>n<100).map(n=>n*2).reduce((pre,n)=>pre+n)
    console.log(total2);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值