急急急,javascript的prototype问题?
<script language="javascript">function kk(){
this.a=123;
}document.write (kk.prototype==Object());</script>第一:document.write (kk.prototype)结果是[object Object]第二:document.write (Object())结果是[object Object]kk.prototype原型就是指向了Object()的,既然是指向了Object(),那么为什么(kk.prototype)==Object()不相等啊?返回false啊?
最后问下,怎么判断出kk.prototype的原型对象是哪个,也就是说是哪个东西给prototype赋的值?
<script language="javascript">function kk(){
this.a=123;
}document.write (kk.prototype==Object());</script>第一:document.write (kk.prototype)结果是[object Object]第二:document.write (Object())结果是[object Object]kk.prototype原型就是指向了Object()的,既然是指向了Object(),那么为什么(kk.prototype)==Object()不相等啊?返回false啊?
最后问下,怎么判断出kk.prototype的原型对象是哪个,也就是说是哪个东西给prototype赋的值?
this.a=123;
} alert(kk.prototype.toString() == Object().toString());这样才能相等,你调用document.write的时候其实是写的是字符串
而不是本身的内容。
本身是一个地址。
Object()行到的是Object类的构造方法new出来的.
kk.prototype只是等到了KK的构造方法new出来