|
|
@@ -45,7 +45,23 @@
|
|
|
* 1.所有的构造函数中都自带了一个prototype属性(显性),该属性指向的就是当前构造函数的原型
|
|
|
* 2.所有的构造函数都自带了一个构造器constructor(隐性),该属性指向的是当前原型的构造函数
|
|
|
* 3.构造函数可以通过new进行实例化 产生该构造函数的实例化对象
|
|
|
+ * 4.实例化对象 可以通过_proto_(隐性)方法 访问到该构造函数原型中的属性和方法
|
|
|
*/
|
|
|
+ function Person() {};
|
|
|
+ var person = new Person();
|
|
|
+ console.log(person.__proto__ == Person.prototype);
|
|
|
+ console.log(Person.prototype.constructor == Person);
|
|
|
+ console.log(Object.getPrototypeOf(person) === Person.prototype);
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 原型链
|
|
|
+ * 访问对象属性时 先从对象本身去进行寻找
|
|
|
+ * 通过_proto_去原型上找
|
|
|
+ * 若还未找到 则在原型对象的原型上找 找到则返回 找不到则返回undefined
|
|
|
+ */
|
|
|
+
|
|
|
+
|
|
|
</script>
|
|
|
</body>
|
|
|
|