// 单行注释 /** * 多行注释 */ /** * 属性 写在构造函数下 * 方法 写在原型对象下 */ /**原型链: * 当访问一个对象的属性时 先去对象的自身属性去找 找不到 * 会通过_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 a = new Object() // new 实例化对象 // 相当于创建了一个新的对象 var person1 = new person('LiLi',100); var news1 = new person('喔喔',25); person1.eat(); news1.eat();