//字面量的形式创建原型对象 /* function Box(){} Box.prototype={ 'name':'gao', age:23, fun:function(){ return this.name+'--'+this.age; } } var box1=new Box(); console.log(box1.age) console.log(box1.constructor) */ //1.使用字面量后constructor会指向Object,因为Box.prototype={}这种写法创建了一个新的对象导致. //解决方式如下: function Box(){} Box.prototype={ constructor:Box, 'name':'gao', age:23, fun:function(){ return this.name+'--'+this.age; } } var box1=new Box(); console.log(box1.age) console.log(box1.constructor) //2.原型对象不仅仅在自定义对象中可以使用,内置的引用类型都可以使用,并且本身页使用了原型 var box2=[1,15,9,8,6,12]; console.log(Array.prototype.sort()); //3.给原型增加方法 String.prototype.addstring=function(){ return this+'-Hello!'; } console.log('China'.addstring());