美文网首页
九、箭头函数 ------ 2020-04-06

九、箭头函数 ------ 2020-04-06

作者: 自己写了自己看 | 来源:发表于2020-04-06 20:50 被阅读0次

    1、箭头函数的创建:

    /**
    * 1、箭头函数的创建都是函数表达式方式(变量 = 函数);
    *  这种模式下不存在变量提升,函数只能在创建完成后被执
    *  行;
    */
    const fn = ([形参]) => {
        // 函数体
    }
    fn([实参]);
    
    // 特点:(1)如果实参只有一个,小括号可以不加;
    // (2)如果函数体中只有一句话,并且是return XXX,
    // 可以省略大括号;
    

    2、箭头函数中没有arguments

    /**
    * 1、箭头函数中没有arguments,但是可以基于剩余运算符
    *  获取实参集合;而且ES6支持给形参设置默认值;
    */
    let obj = {};
    const fn = (context = window, ...args) => {
        console.log(context, args)
    }
    fn(obj, 20, 30, 40); // context = obj; args = [20,30,40]
    fn(); // context = window; args = [];
    

    3、箭头函数中没有自己的this

    /**
    *  箭头函数中没有自己的this,它里面用到的this
    *  都是自己所处上下文中的this,真实项目中一旦
    *  涉及到this问题,箭头函数慎用;也就是箭头函
    *  数中的this只和他定义的地方的有关,和谁执行
    *  的他没有任何关系;而且,箭头函数中的this是
    *  无法通过call、apply方法改变的;
    */
    

    相关文章

      网友评论

          本文标题:九、箭头函数 ------ 2020-04-06

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