javaScript原型链
JavaScript所有对象都有原型,当对象有属性或方法调用的时候,对象就会从自身查找属性,如果找不到,那么就会沿着对象的原型往上找。
proto对象
var a={type:'code'}
var b = {}
b.__proto__ = a
设置a为b的原型a.type==>code
- 判断一个对象是否为另外一个对象的原型
a.isPrototypeOf(b) ==> true
-
原型查找是动态的,可以有需求时添加
-
在b上修改type属性,不会影响到a
-
用
__proto__
为对象设置原型的并不通用,用Object.create();

继承顺便新增属性

- Object.getPrototype
使用Object.getPrototypeOf()获取对象的原型 没有Object.setPrototype()设置原型的方法

- 构造函数
1.作为构造器的函数
在JavaScript中,可以通过new来创建实例,使用new创建实例,函数能生成新的对象,通过函数的原型([prototype])和函数保持关联.吧新的对象称为函数的实例.

- 隐式的赋值[this]
使用[new]创建时,JavaScript以[this]关键字向函数注入了新创建对象的隐式引用,在函数的运行结尾处会隐式的返回该引用;
当我们这样新建对象时
网友评论