事情的起因是在掘金上看到这篇文章,里面涉及到的js知识整理了一下
js 运算符优先级
promise
Class
constructor()方法是类的默认方法,通过new命令生成对象实例时,自动调用该方法。一个类必须有constructor()方法,如果没有显式定义,一个空的constructor()方法会被默认添加。class就是原型链的语法糖,class的方法都是挂载在prototype上的
继承
class Apple extend Fruits
静态方法
1. 类相当于实例的原型,所有在类中定义的方法,都会被实例继承。如果在一个方法前,加上static关键字,就表示该方法不会被实例继承,而是直接通过类来调用,这就称为“静态方法”。
class Foo {
static classMethod() {
return 'hello';
}
}
Foo.classMethod() // 'hello'
var foo = new Foo();
foo.classMethod()
2.如果静态方法包含this关键字,这个this指的是类,而不是实例,
静态方法可以和实例方法重名,
静态方法可以被继承
bind,call, apply
Decorator
装饰器能在编译阶段运行代码。也就是说,装饰器本质就是编译时执行的函数