【转】javascript中的toString()方法(同时对比Array.join()和Array.toString()方法

本文转载和整合自点击打开链接点击打开链接

(1)Array.toString()和Array.join():

join()方法将数组中所有的元素转化为字符串,并将这些字符串有逗号隔开合并成一个字符串作为方法的结果返回。如果调用时给定参数string,就将string作为在结果字符串中分开有各个数组元素形成的字符串的分隔符。

 

toString()方法返回一个包含数组中所有元素,且元素之间以逗号隔开的字符串,该方法在将数值作为字符串使用时强制调用,且无须显示声明此方法的调用。

 

实例:


 
 
  1. <script type= "text/javascript">
  2. <!--
  3. var arr = new Array("first","Second","Third","Forth");
  4. var str2 = arr.toString();
  5. var str1 = arr.join();
  6. var str3 = arr.join(" ");
  7. document.write(str1+"<br>");
  8. document.write(str2+"<br>");
  9. document.write(str3+"<br>");
  10. -->
  11. </script>

输出:

first,Second,Third,Forth
first,Second,Third,Forth
first Second Third Forth

--------------------------------------------------------------------------------------------------------------

实例:


 
 
  1. <html>
  2. <head>
  3. <title>Sample Page! </title>
  4. <script type="text/javascript">
  5. <!--
  6. function getMsg(arrayName){
  7. var arrayLength = arrayName.length;
  8. var tempMsg = "";
  9. for( var i = 0; i < arrayLength;i++){
  10. tempMsg += "MyArray["+i+ "] = "+arrayName[i]+ "\n";
  11. }
  12. return tempMsg;
  13. }
  14. function MyTest(){
  15. var MyArray = new Array( "First", "Second", "Third", "Forth");
  16. var msg = "调用Array对象的方法生成字符串实例:\n\n";
  17. msg += "原始数组:\n"+getMsg(MyArray)+ "\n";
  18. var tempStr = "";
  19. tempStr = MyArray.join();
  20. msg += "1、调用MyArray.join()方法返回字符串:\n"+tempStr+ "\n\n";
  21. tempStr = MyArray.join( "-");
  22. msg += "2、调用MyArray.join(''-'')方法返回字符串:\n"+tempStr+ "\n\n";
  23. msg += "3、调用MyArray.toString()方法返回字符串:\n"+MyArray+ "\n";
  24. alert(msg);
  25. }
  26. -->
  27. </script>
  28. </head>
  29. <body>
  30. <br>
  31. <center>
  32. <form name="MyForm">
  33. <input type="button" value="数组测试" onclick="MyTest()">
  34. </form>
  35. </center>
  36. </body>
  37. </html>

输出:

join()和toString()方法 <wbr>将数组转换为字符串


(2)Boolean.toString():将布尔值转换为字符串。
描述:根据原始布尔值或者Boolean对象的值返回字符串“true”或“false”。
示例代码二:
结果:弹出两个对话框,值为false和true


 
 
  1. <script type= "text/javascript">
  2. var b = new Boolean(); //boolean对象默认值为false
  3. alert(b.toString());
  4. alert(( "chia" == "chia").toString());
  5. </script>

(3)Date.toString():将Date对象转换成一个字符串,采用本地时间。
示例代码四:
结果:浏览器中显示:
Sat Jul 19 2008 23:27:14 GMT+0800
Sat Jul 19 2008 23:27:14 GMT+0800
2008年7月19日 23:27:14


 
 
  1. <script type= "text/javascript">
  2. var today = new Date();
  3. document.write(today + "<br />");
  4. document.write(today.toString() + "<br />");
  5. document.write(today.toLocaleString());
  6. </script>

注意:toLocaleString()是返回采用地方日期使用地方日期格式的规范的字符串。


    (4)Error.toString():将Error对象转换成字符串
描述:实现定义的字符串。ECMAScript标准除了规定该方法的返回值是字符串外,没有再做其他规定。尤其是,它不要求返回的字符传包含错误名和错误信息。

(5)Function.toString():把函数转换成字符串
描述:可以以一种与实现相关的方法将函数转换成字符串。在大多数的实现中,例如ie和firefox,它返回Function关键字、参数列表、函数体部分。
示例代码三:
结果:浏览器中显示:
function add(a, b) { var a, b, c; c = a + b; return c; }


 
 
  1. <script type= "text/javascript">
  2. function add(a,b){
  3. var a,b,c;
  4. c = a + b;
  5. return c;
  6. }
  7. document.write(add.toString());
  8. </script>
6)Number.toString():将数字转换为字符串。用它的参数指定的基数或底数(底数范围为2-36)。如果省略参数,则使用基数10。当参数值为2时,返回二进制数。
示例代码四:
结果:浏览器中显示:
34
100010
42
22


 
 
  1. <script type= "text/javascript">
  2. var a = 34;
  3. document.write(a.toString() + "<br />");
  4. document.write(a.toString( 2) + "<br />");
  5. document.write(a.toString( 8) + "<br />");
  6. document.write(a.toString( 16) + "<br />");
  7. </script>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 是的,除了使用 JavaScript 的 .join() 方法,还可以使用以下方法数组换为字符串: 1. 使用 toString() 方法: ``` let arr = [1, 2, 3]; let str = arr.toString(); console.log(str); // 输出 "1,2,3" ``` 2. 使用 Array.prototype.join() 方法: ``` let arr = [1, 2, 3]; let str = arr.join(); console.log(str); // 输出 "1,2,3" ``` 3. 使用 + 运算符: ``` let arr = [1, 2, 3]; let str = arr[0] + ',' + arr[1] + ',' + arr[2]; console.log(str); // 输出 "1,2,3" ``` 4. 使用模板字符串: ``` let arr = [1, 2, 3]; let str = `${arr[0]},${arr[1]},${arr[2]}`; console.log(str); // 输出 "1,2,3" ``` ### 回答2: 除了JavaScript的.join()方法,还有其他方法数组换为字符串。 1. toString()方法:将数组换为由数组元素组成的字符串。例如:[1, 2, 3].toString() 将返回 "1,2,3"。 2. concat()方法:将数组的所有元素连接起来,并返回一个新的字符串。该方法不会改变原数组。例如:[1, 2, 3].concat().join('') 将返回 "123"。 3. reduce()方法:使用指定的回调函数对数组元素进行累加器操作,将数组换为一个值。然后可以使用字符串拼接操作将该值换为字符串。例如:[1, 2, 3].reduce((accumulator, currentValue) => accumulator + currentValue, '').toString() 将返回 "6"。 4. map()方法join()方法的组合:使用map()方法数组的每个元素为字符串,并返回一个新的数组。然后使用.join()方法将新数组换为字符串。例如:[1, 2, 3].map(String).join('') 将返回 "123"。 这些方法都可以将数组换为字符串,可以根据不同的需求选择合适的方法来使用。 ### 回答3: 除了JavaScript的.join()方法数组换为字符串,还有以下几种方法: 1. toString()方法:使用toString()方法可以将数组换为以逗号分隔的字符串。例如: ```javascript let array = [1, 2, 3]; let str = array.toString(); console.log(str); // 输出:1,2,3 ``` 2. concat()方法:使用concat()方法可以将数组连接为一个字符串。例如: ```javascript let array = [1, 2, 3]; let str = array.concat().join(""); console.log(str); // 输出:123 ``` 3. reduce()方法:使用reduce()方法可以将数组的每个元素合并为一个字符串。例如: ```javascript let array = [1, 2, 3]; let str = array.reduce((a, b) => a + b.toString(), ""); console.log(str); // 输出:123 ``` 4. map()方法 + join()方法:使用map()方法数组的每个元素进行处理,然后使用join()方法将处理后的元素连接为字符串。例如: ```javascript let array = [1, 2, 3]; let str = array.map(String).join(""); console.log(str); // 输出:123 ``` 总结:除了.join()方法,还可以使用.toString()方法、.concat()方法、.reduce()方法,或者结合.map()方法和.join()方法数组换为字符串。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值