ES6 apply call和ES5 bind 对比,以及class

https://www.jianshu.com/p/594f77f0cfa7

 

所有原型中的this都指向调用它的函数。

在 javascript 中,callapply 都是为了改变某个函数运行时的上下文context而存在的,换句话说,就是为了改变函数体内部 this 的指向;

JavaScript 的一大特点是,函数存在 定义时上下文运行时上下文以及上下文是可以改变的这样的概念;

call 和 apply相同点:

都 是为了动态改变 this 而出现的。

当一个对象中没有某个方法,但是其他的对象有这个方法,我们可以借助callapply用其它对象的方法来操作。

不同点:

体现在传参方式上:

 

 实际上是个“特殊的函数”,就像你能够定义的函数表达式函数声明一样,类语法有两个组成部分:类表达式类声明

 

注意: 类表达式也同样受到类声明中提到的提升问题的困扰。

extends 关键字在类声明或类表达式中用于创建一个类作为另一个类的一个子类。

super 关键字用于调用对象的父对象上的函数。

 

posted @ 2018-04-10 14:14  liuxu_xrl  阅读(250)  评论(0)    收藏  举报