JavaScript ES6 箭头函数 匿名函数 普通函数

Posted  Island

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript ES6 箭头函数 匿名函数 普通函数相关的知识,希望对你有一定的参考价值。

箭头函数

箭头函数是ES6的新特性,简化了函数的写法

普通函数

this指向调用者
具有prototype

匿名函数

this指向window
具有prototype
表现为function后面不带名字的函数,但是可以用一个变量接收,通过执行这个变量来执行这个函数

箭头函数

1 没有原型prototype
2 因为没有原型,因此没有super用于访问原型属性
3 没有arguments,如果有一定是父级作用域的arguments
4 箭头函数自身没有this,它的this来源于作用域链(作用域相对于函数,原型相对于对象),this指向依然是父级作用域(或者说上下文)的this指向
5 箭头函数是匿名函数,所谓匿名函数,就是function后面不带名字的函数,但是可以用一个变量接收,通过执行这个变量来执行这个函数
6 箭头函数不能作为构造函数使用(构造函数的this指向由他实例化出来的对象,而箭头函数没有this,它的this是父级作用域的this),它和new关键字一起使用的时候会抛出异常
7 不能使用new.target关键字返回创建实例的构造函数(类)本身

new.target的使用

        //new.target 用于方法内
        //当方法作为构造时,返回创建该实例的构造函数
        //当方法不作为构造函数时,返回undefined
        //可用于判断是否使用new 关键字创造了实例
        function Animal(){
            console.log(new.target)
        }

        Animal()// undefined

        new Animal();// Animal









以上是关于JavaScript ES6 箭头函数 匿名函数 普通函数的主要内容,如果未能解决你的问题,请参考以下文章

javascript箭头函数

es6箭头函数

箭头函数 -------JavaScript

ES6深入浅出-2 新版函数:箭头函数 2 视频-1.视频 箭头函数

箭头函数

es6中箭头函数