请问javascript的string对象问题?第一段:
<script language="javascript">
var kk=new Object("123")
document.write (kk.toString());
</script>
第二段:
<script language="javascript">
function ss(aa){
}
var vv=new ss("123");
document.write (vv.toString());
</script>第一段代码将123传到Object内置函数体里面去后就变成了string对象了给kk引用,然后输出kk的对象字符串为123.说明是一个对象字符串.那么我在第二段定义了一个ss(aa)函数,将字符串"123"传入后怎么才能变成string对象,给vv引用,并用vv.toString输出为123的字符串?在ss函数体内写return aa返回字符串,用vv.toString输出的是object Object也不是123
第二个问题:ss(aa)这个自定义函数的参数变量为aa,aa就是接口名.那么请问Object()这个内置构造函数(括号里的参数变量名是什么,也就是接口名是什么名字)?

解决方案 »

  1.   

    建议楼主先学习一下js参考手册一般都不用new Object("123")这种写法,没什么意义
    还有内置,接口这些概念对js不怎么适用要知道是什么类型就用alert(typeof vv)我觉得js不是严格意义的oo,只是支持oo的某些特性,自己会用就行
      

  2.   

    var vv=new ss("123"); 变量 vv 是 ss方法对象 ,而不是 String 字符内置构造函数写法是:function a(
    alert("aa");
    )
    var a1= new a();
      

  3.   

    "在ss函数体内写return aa返回字符串,用vv.toString输出的是object Object也不是123 "
    <script language="javascript">function a(s){
        return s;
    }
    function b(s){
        return new String(s);//构造函数中的return只有返回对象时才会覆盖new的结果
    }var x = new a("123");
    alert(x instanceof String);
    alert(x.toString());var y = new b("123");
    alert(y instanceof String);
    alert(y.toString());</script> 
    "那么请问Object()这个内置构造函数(括号里的参数变量名是什么,也就是接口名是什么名字)? "
    在函数中可以通过 arguments 来访问参数对象。参见:arguments 对象
    该对象代表正在执行的函数和调用它的函数的参数。说明
    不能显式创建 arguments 对象。arguments 对象只有函数开始时才可用。函数的 arguments 对象并不是一个数组,访问单个参数的方式与访问数组元素的方式相同。索引 n 实际上是 arguments 对象的 0…n 属性的其中一个参数。示例
    下面的示例演示了 arguments 对象的用法。function ArgTest(a, b){
       var i, s = "The ArgTest function expected ";
       var numargs = arguments.length;     // 获取被传递参数的数值。
       var expargs = ArgTest.length;       // 获取期望参数的数值。
       if (expargs < 2)
          s += expargs + " argument. ";
       else
          s += expargs + " arguments. ";
       if (numargs < 2)
          s += numargs + " was passed.";
       else
          s += numargs + " were passed.";
       s += "\n\n"
       for (i =0 ; i < numargs; i++){      // 获取参数内容。
       s += "  Arg " + i + " = " + arguments[i] + "\n";
       }
       return(s);                          // 返回参数列表。
    }