俩月没更新博客,10月GCT考试 11月结婚 这又连续加班半个月了, 马上又要去普吉岛蜜月, 都完事儿了就踏实了…
这几天自己瞎研究了一下js的继承, 现在写的肯定会有出错的地方, 先记下来 等回头学精了再来查错.
先从继承的宿主 也就是从对象上分, 对象的声明方式上分为:
一: 使用”构造函数”模式, 二: 使用字面量声明对象,
先说第二种,字面量因为没有用new, 所以只能手动去拷贝. 可玩性比较低, 以我现在的水平看不合适做继承.
重点说第一种”构造函数”模式,
这种继承从具体的继承方法上分:1.apply继承: 2.类拷贝继承
目前实验得出的结论是:
|
|
|
|
这两种同时使用, 正好能补全全部继承的内容. 具体实现见代码:
一: 使用”构造函数”模式
利用new生成实例: this指向实例对象,实例.constructor指向父类,instanceof也可检测
使用prototype减少实例中的拷贝: 父类.prototype.isPrototypeOf(实例)==true
|
|
二: 使用字面量声明对象
这个因为没有new, 只能去拷贝. 可玩性比较低, 以我现在的水平看不合适做继承