你不知道的 JavaScript 上卷 看完
- date: 20200322
- author: czhang
Plan
你不知道的 JavaScript 上卷 看完
Notes
1. 面向对象 & 对象关联 两种设计模式
1. 面向对象:
Bar.prototype = Object.create(Foo.prototype);
var b1 = new Bar('b1');
var b2 = new Bar('b2');
2. 对象关联:
Bar = Object.create(Foo);
var b1 = Object.create(Bar);
b1.init('b1');
var b2 = Object.create(Bar);
b2.init('b2');
2. 内省
- 定义:检查实例的类型
- instanceof
function Foo() {}
var a1 = new Foo();
检查 a1 和 Foo.prototype 的互相关联
3. ES6 中的 Class
- 只是现有[[Prototype]] 机制的一种语法糖
- 无法定义类成员属性,只能定义方法
- super 可能会混乱
- 动态 假装成 “静态”