若干年前我探究JAVASCRIPT的Prototype时使用一段很乱的代码,可能也是改自别人的代码,我想可以从中推断出不少的东西。 <!-- arrayObj = new Array() alert(arrayObj.constructor); alert(arrayObj.constructor.prototype); alert(arrayObj.constructor.constructor); alert(Array); alert(Array.prototype); alert(Array.constructor); alert(Array.constructor.prototype); alert(Array.constructor.prototype.constructor.prototype); --> <html> <head> <title>JScript Prototype Research</title> </head> <body> <mce:script language="javascript"><!-- function objTest(obj){ var i, t, s = ""; // 创建变量。 t = new Array(); // 创建一个数组。 t["Date"] = Date; // 填充数组。 t["Object"] = Object; t["Array"] = Array; t["Function"] = Function; t["RP"] = RP; t["Boolean"] = Boolean; t["Number"] = Number; t["Error"] = Error; t["String"] = String; t["RegExp"] = RegExp; for (i in t) { if (obj instanceof t[i]) // 检查 obj 的类。 { s += "obj is an instance of " + i + "/n"; } else { s += "obj is not an instance of " + i + "/n"; } } return(s); // 返回字符串。 } function RP() { RP.PropertyA = 1; RP.MethodA = function() { alert("RP.MethodA "); }; } alert(RP.prototype); var obj = new Date(); alert(objTest(obj)); var obj0 = 1; alert(objTest(obj0)); alert(objTest(RP)); // --></mce:script> <mce:script language="javascript"><!-- rp = new RP(); alert(objTest(rp)); alert(RP.PropertyA); RP.MethodA(); alert(rp.PropertyA); rp.MethodA(); // --></mce:script> </body> </html> 贴上来也是为了纪念一下我以前的劳动。因为我要从硬盘上删掉了。