JS箭头函数

作者: 何大必 | 来源:发表于2019-03-01 18:52 被阅读0次

查看MDN中更详细的文档

箭头函数

箭头函数表达式没有自己的this,arguments,super或new.target。

引入箭头函数作用

引入箭头函数的作用:更简短的函数并且不绑定this

更简短的函数

let sum = (x,y,z) => { return x+y+z; }

不绑定this

在箭头函数出现之前,每个新定义的函数都有他自己的this值。(在构造函数的情况下是一个新对象,在严格模式的函数调用中为 undefined,如果该函数被作为“对象方法”调用则为基础对象等)。

通过call、apply调用箭头函数

由于箭头函数没有自己的this指针,通过call()、apply()方法调用时,第一个参数会被忽略。(箭头函数中若用了this,这个this指向包裹箭头函数的第一个普通函数的 this。)

不绑定arguments

大多数情况下,使用剩余参数是相较于arguments对象的更好选择。

箭头函数不能使用new操作符

箭头函数不能用作构造器,和 new一起用会抛出错误。

var Foo = () => {};
var foo = new Foo(); // TypeError: Foo is not a constructor

箭头函数没有prototype属性

箭头函数不能用作生成器

yield 关键字通常不能在箭头函数中使用(除非是嵌套在允许使用的函数内)。因此,箭头函数不能用作生成器。

返回对象字面量时

箭头函数返回简单值时可以简写成:

let sum = ( x, y ) => x + y

but返回对象字面量时不口以这样var func = () => {foo: 1},需要用圆括号括起来

var func = () => ({foo: 1});

以下跟箭头函数没啥关系咯~~

函数的默认参数

没有默认参数时要进行检查检查~

function multiply(a, b) {
  b = (typeof b !== 'undefined') ?  b : 1;
  return a * b;
}

有了默认参数后~优雅的写代码

function multiply(a, b = 1) {
  return a * b;
}

相关文章

  • ES6箭头函数简介

    @(JS技巧)[ES6|箭头函数] ES6箭头函数(Arrow Functions) ES6可以使用“箭头”(=>...

  • [译]JS箭头函数三连问:为何用、怎么用、何时用

    [译]JS箭头函数三连问:为何用、怎么用、何时用在现代JS中最让人期待的特性就是关于箭头函数,用=>来标识。箭头函...

  • 箭头函数和普通函数的区别

    定义 变量提升 由于 js 的内存机制,箭头函数需要先定义后调用 构造函数 箭头函数作为匿名函数,不能作为构造函数...

  • js函数&箭头函数

    1⃣️ 函数前提 2⃣️ 箭头函数1)this 指向定义时所在的对象,而不是调用时所在的对象 2)不可以当作构造函...

  • [JS函数] 箭头函数

    箭头函数 箭头函数就相当于匿名函数 使用方法和匿名函数相同。注意返回一个对象的时候加上()。对象的{}可能会与函数...

  • Js 箭头函数

    当初学者进行学习的时候总会看到=>这种写法 其实它是ES6标准新增了一种新的函数:Arrow Function(箭...

  • js箭头函数

    箭头函数的作用:1.缩减代码量,2.this在代码块{}中是全局作用域 1.无参无返回值 语法: let/co...

  • JS箭头函数

    箭头函数的作用域是和定义这个箭头函数的父级上下文绑定在一起的匿名函数的作用域是和定义匿名函数的上下文绑定在一起的 ...

  • JS箭头函数

    查看MDN中更详细的文档 箭头函数 箭头函数表达式没有自己的this,arguments,super或new.ta...

  • 5种应该避免使用箭头函数的情况

    摘要: 箭头函数也有可能会有BUG... 原文:几种应该避免使用箭头函数的情况 作者:JS菌 Fundebug经授...

网友评论

    本文标题:JS箭头函数

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