自己倒下~~~己经搞定原来就是toString()成员方法。我靠这个成员方法还真不简单啊哈哈~~

解决方案 »

  1.   

    function Test(){
    this.value=21341;
    this.toString=function(){
    return 11111;
    }
    }
    var test=new Test();
    alert(test);
    alert(test instanceof Test);
    alert(test.value);搞段代码给大家算啦
      

  2.   

    前两天,我在想一个数据库的一个存取方案时,碰到一个问题,是关于对象的默认值的事儿,我用Response.Write(obj)时居然出现错误信息“找不到对象的默认值。”。
      嚯嚯~~,这问题好像碰到很少,而转念一想,好像之后还有东西会要涉及到这东西,看来不得不想想办法此事如何是好了。  比如说,String对象的默认值是代表它的字符串,用alert()方法显示出来是那个字符串, 而不会是它的length数值,那么这对象的默认值是如何设定呢? function Test(){
      this.value=3232;
      this.name="fjdslkajf";
    }先有这么一个对象,假若我要alert(new Test());的话,如何让它显示的是那name的字符串值
    而非value值,或更非[object object]这样地呢  我刚开头的想法是,看看能否用类构造器里return语句会否指定对象的默认值呢?于此,有了以下的代码:function Test(){
      this.value=3232;
      this.name="fjdslkajf";
      return 12313213;
    }alert(new Test());的结果还是[object object]哎哎~~想来想去,哎哎,都打算去问meizz还有去CSDN去打听了,后来灵光一现,toString成员方法这老小子很多默认的对象都有的,为何不找它来看看呢?于是又有了以下的代码function Test(){
       this.value=21341;
       this.toString=function(){
          return this.value;
       }
    }
    var test=new Test();
    alert(test);   //21341
    alert(test instanceof Test);   //true
    alert(test.value);   //21341结果如上,嚯嚯,原来toString方法如此重要地
    哈哈
    表面上看好像test还是一个数值21341,但是test instanceof Test的值不得不说明它是Test对象的一个实例。哈哈,搞定
      

  3.   

    我以前真的没有想过。嘻嘻
    请教一下,alert(new Test());这个里边显示的应该是什么值?
      

  4.   

    啊,明白了!再问个白一点的问题,为什么显示出来的是两个object,显示他是个对象,一个就够了呀?
    比如把alert里边换成"Date()"或者"String"都不会显示一个object后再显示本身对象的值。为什么?