1.对象的 prototype 属性,可以把它看成创建新对象所依赖的原型。===在我理解,就是prototype下设置的字段是唯一性的,共享性的,不管创建多少个对象,所处空间都是不变的,没有增加也没有减少,指向的指针都是指向那最初的地方。
教程: http://www.w3school.com.cn/js/pro_js_object_defining.asp
function Car(sColor,iDoors,iMpg) {
this.color = sColor;
this.doors = iDoors;
this.mpg = iMpg;
this.drivers = new Array("Mike","John");
} Car.prototype.showColor = function() {
alert(this.color);
}; Car.prototype.test=new Array("First","Second"); var oCar1 = new Car("red",4,23);
var oCar2 = new Car("blue",3,25); oCar1.drivers.push("Bill");
oCar1.test.push("Third")
alert(oCar1.drivers); //输出 "Mike,John,Bill"
alert(oCar2.drivers); //输出 "Mike,John"
alert(oCar1.test); //输出 "First,Second,Third"
alert(oCar2.test); //输出 "First,Second,Third"
原型方式
2.看教程的时候,有typeof ,instanceof这样的方法,其中,instanceof针对的是创建的对象,而不是原有的类型。在这里能看到a的类型是number,但是如果不创建function number(){}的话,
那么将无法输出document.write( a instanceof number)这个结果。而当创建后,则会显示false
var a=1
document.write( typeof a)//number
function number(){}
document.write( a instanceof number)//false
a=new number();
document.write( a instanceof number)//true
3.
待续 》》》