javascript:<html>
<head>
<script>
var str="a,b,c,d,e";
var strs = str.split(",");
for(var i =0;i<strs.length;i++){
alert(strs[i])
}
alert(strs[0]);//a
   //alert(typeof strs=="object"); //true
//alert( strs.constructor=="Array");//false
alert( strs.constructor=="array");//false
  alert(strs.length);//5
//alert(typeof strs=="string");//false
//alert(typeof strs=="String");//false
</script>
</head>
 
 <body>
 </body>
</html>
我想测试,split()方法返回的是string还是数组?还有如果split(正则)返回的和前面的一样吗

解决方案 »

  1.   

    <html>
    <head>
    <script>
      
        var str="a,b,c,d,e";
        var strs = new Array(str.length);
        strs = str.split(",");
        for(var i =0;i<strs.length;i++){
            alert(strs[i])
            }
        alert(strs[0]);//a
       //alert(typeof strs=="object"); //true
        //alert( strs.constructor=="Array");//false
            alert( strs.constructor=="array");//false
          alert(strs.length);//5
        //alert(typeof strs=="string");//false
        //alert(typeof strs=="String");//false
    </script>
    </head>
     
     <body >
     </body>
    </html>
      

  2.   

    对于Array,Null等特殊对象使用typeof一律返回object,这正是typeof的局限性。
    可用instanceof
      

  3.   

    返回来的是数组,你可以用typeof 判断他是不是对象(object),然后再判断对象是否有length 然后再对其操作 
      

  4.   

        alert(strs instanceof Array);//true
      

  5.   

    返回数组,看api去,这个还用测试干么?