javascript所有對(duì)象都繼承自O(shè)bject類。以下是Object類的一些屬性。原型對(duì)象
的一些屬性。
1、constructor屬性
從javascript1.1開始,每個(gè)對(duì)象都有這個(gè)屬性,它指向用來(lái)初始化改對(duì)象的構(gòu)造
函數(shù)
?































?
如以上代碼,可以知道
a、constructor的類型是函數(shù);
b、javascript內(nèi)部實(shí)現(xiàn)了很多函數(shù),如Object,Date都是函數(shù)由Function得到的
。
c、用原型對(duì)象實(shí)現(xiàn)的繼承中,也要設(shè)置子類的constructor。如果你的程序中用
到了constructor,可能會(huì)出錯(cuò)。
2、toString()方法
相當(dāng)于java Object類中toString方法。你alert()? + 等操作中就會(huì)調(diào)用這個(gè)方
法。 var s='1'+'2',會(huì)自動(dòng)把'1'? '2'? 轉(zhuǎn)化成String對(duì)象在執(zhí)行。
但數(shù)組定義自己的toString方法。alert(Array.prototype.toString)
如果對(duì)象或子類要調(diào)用父類的方法可以
?






?
3、toLocalString()方法
ECMAScript v3 javascript1.5中定義了這個(gè)方法。返回局部化的值。偶還不知道
什么用法。
4、valueof()
當(dāng)javascript與要將一個(gè)對(duì)象轉(zhuǎn)化成字符串之外的原始類型時(shí)調(diào)用它。
5、hasOwnProperty()方法
《javascript權(quán)威指南》說(shuō)如果是非繼承的屬性返回true.但下列代碼反映,它檢
驗(yàn)對(duì)象的實(shí)例屬性。對(duì)原型屬性不會(huì)返回。
?






























6、propertyIsEnumerable
《javascript權(quán)威指南》如果用能 for( in )枚舉的屬性,這個(gè)方法返回true;
以下代碼說(shuō)明《javascript權(quán)威指南》是錯(cuò)的。自己定義的原型對(duì)象屬性可以枚
舉,但返回false
?




















































7、isPrototypeOf方法
《javascript權(quán)威指南》如果調(diào)用對(duì)象是實(shí)際參數(shù)指定的對(duì)象的原型對(duì)象返回
true. 看代碼吧。
居然alert(Object.prototype.isPrototypeOf(Person));//true也是true.搞不懂
?


























?
8、總結(jié)
看《javascript權(quán)威指南》前,就知道toString方法。現(xiàn)在知道了些其他的方法
,但讓我更加混亂,《javascript權(quán)威指南》講的也有錯(cuò)誤。開發(fā)中建議大家除
了toString,其他屬性方法不要覆蓋也不要使用了。除了對(duì)這些方法十分清楚。就
我知道的javascript開源框架中好象沒(méi)用到這些。