|
@@ -0,0 +1,34 @@
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ * 多行注释
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ * 属性 写在构造函数下
|
|
|
|
+ * 方法 写在原型对象下
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ * 当访问一个对象的属性时 先去对象的自身属性去找 找不到
|
|
|
|
+ * 会通过_proto_(每个实例化对象自带的一个属性(隐性的))去构造函数上找
|
|
|
|
+ * 如果未找到 在Object对象上找 还未找到 返回 undefined
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+function person(name,age) {
|
|
|
|
+ this.name = name;
|
|
|
|
+ this.age = age;
|
|
|
|
+ console.log(this.name,this.age)
|
|
|
|
+
|
|
|
|
+ * 每一个构造函数(constructor) 都有一个prototype属性
|
|
|
|
+ * prototype(显性的)属性 指向原型对象
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ person.prototype.eat = function() {
|
|
|
|
+ console.log(this.name,'属性')
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+var person1 = new person('LiLi',100);
|
|
|
|
+var news1 = new person('喔喔',25);
|
|
|
|
+person1.eat();
|
|
|
|
+news1.eat();
|