function t(){ this.a = "sdf";}t.prototype = {
    y: function(){
        alert(this.a);
    },
    x: y  //此处想定义一个x方法,使x = y
}var p = new t();
p.x();
p.y();
==================================================
上面代码一直出错, 提示y未定义错误, 请问,如果想在t的原型中定义一个x 方法,使 x = y, 要怎么弄?这样的方式就不用说了:  t.prototype.x = t.prototype.y;

解决方案 »

  1.   

    function t(){ this.a = "sdf";}t.prototype = {
      y: function(){
       alert(this.a);
      },
      x: function(){this.y()}
    }var p = new t();
    p.x();
    p.y();
      

  2.   

    function t(){ this.a = "sdf";}t.prototype = {
      y: function(){
      alert(this.a);
      },
      x: function(){this.y} //此处想定义一个x方法,使x = y
    }var p = new t();
    p.x();我刚才也看到了这个问题   但是 我看到 为什么调用了 x方法  为什么 不执行alert