ES6 箭头函数

基本语法

  1. 基本形式:() => {}
  • ():参数。如果函数只有一个参数的时候,可以直接写参数名,省略括号。如果函数没有参数,直接使用小括号。
  • => :定义箭头函数符号。
  • {}:函数体。如果只有一条表达式,可省略花括号,表示返回表达式结果。
  1. 基本使用
  • 函数有多个参数
let add = (a, b) => {
    return a + b;
};
// 或者
let add = (a, b) => a + b;
// 等价于
let add = function(a, b) {
    return a + b;
};
  • 函数只有一个参数
let func = a => -a; 
// 等价于
let func = function (a) {
    return -a;
};
  • 函数没有参数
let getValue = () => 5;
//等价于
let getValue = function() {
    return 5
};

箭头函数与传统函数区别

  1. 没有 this,super,arguments 以及 new.target 绑定 这些绑定由最近一层非箭头函数决定。
  2. 不能通过 new 关键字调用 箭头函数没有 Construct 方法,所以不能被用作构造函数。
  3. 没有原型 由于不能通过 new 关键字调用函数,因而没有构建原型的需求,所以箭头函数内部也不会存在 prototype 属性。
  4. 不可改变 this 绑定 this 的值与最近一层非箭头函数的生命周期始终保持一致。
  5. 不支持 arguments 对象 由于 arguments 对象是由最近一层非箭头函数决定,箭头函数没有 arguments 绑定,所以不可以通过 arguments 对象访问箭头函数参数,只能通过命名参数和不定参数这两种形式访问函数的参数。
  6. 不支持重复的命名参数 无论在严格还是非严格模式下,箭头函数都不支持重复的命名参数,而传统函数只有在严格模式下才不支持重复的命名参数。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容