var d=function kk(){alert(1);this.p='RED'}; 
var t=new kk();------------------------------ERROR KK未定义
var s=new d();
alert(t.p);
alert(s.p);为什么FIREBUG 提示KK未定义?另外
var d=function kk(){alert(1);this.prototype.p='RED'}; 
var t=new kk();------------------------------ERROR KK未定义
var s=new d();
alert(t.p);
alert(s.p);
为什么只输出一个1就结束了?而把this.prototype.p 改为this.p 能正常输出1,1,RED,RED?

解决方案 »

  1.   

    var d=function kk(){alert(1);this.p='RED'}; 
    在firefox 中<==>var d=function (){alert(1);this.p='RED'}; 
    而在IE中,<==>function kk(){}  var d=kk;
      

  2.   

    为什么新手都一开始就写这么难懂的代码?
    哪个方法的写法奇怪,就写哪个。function kk(){}  这样写多好啊!!!我从未遇到过此类问题。
      

  3.   

    var d=function kk(){alert(1);this.prototype.p='RED'}; 
    var t=new kk();------------------------------ERROR KK未定义 
    var s=new d(); 
    alert(t.p); 
    alert(s.p); 
    为什么只输出一个1就结束了?而把this.prototype.p 改为this.p 能正常输出1,1,RED,RED?这是为什么?
      

  4.   

    this指向当前这个d对象,他的this.prototype打出来的是undefined,所以后面这句话就不执行咯
      

  5.   

    楼上的瞎整吧,alert(kk.prototype)和alert(d.prototype)都不是UNDEFINED
      

  6.   

    var d=function kk(){alert(1);this.p='RED'}; 
    //有这么定义方法的语法吗?var d = function(){}
    function kk(){}
    var d = new Function("","");