1.Array.join()方法
将数组的每一项用指定字符连接形成一个字符串。默认连接字符为 “,” 逗号。
注:将字符串转化为数组的String.split(“分隔符”)与Array.join(“分隔符”)正好相反;
let arr = [1,2,3,4]//定义数组
let str1 = arr.join()
console.log(str1);//1,2,3,4
let str2 = arr.join('')
console.log(str2);//1234
let str3 = arr.join(',')
console.log(str3);//1,2,3,4
let str4 = arr.join('_')
console.log(str4);//1_2_3_4
2.Array.toString()方法
可以把每个元素转换为字符串,并以逗号连接,输出并显示。
let arr = [1, 2, 3, 4]//定义数组
let str = arr.toString(); //把arr数组利用toString()转换为字符串
console.log(str); //输出字符串1,2,3,4
当数组处于字符串环境中时,js会自动调用 toString() 方法将数组转换成字符串。
let arr1 = [0, 1, 2]; // 定义数组
let arr2 = [4, 5, 6]; // 定义数组
let str1 = arr1 + arr2; // 数组连接操作
console.log(str1); // 返回0,1,24,5,6
let arr3 = [0, 1, 2]; // 定义数组
let arr4 = [4, 5, 6]; // 定义数组
let str2 = arr3 + ',' + arr4; // 数组连接操作
console.log(str2); // 返回0,1,2,4,5,6
toString() 在把数组转换成字符串时,首先要将数组的每个元素都转换为字符串。当每个元素都被转换为字符串时,才使用逗号进行分隔,以列表的形式输出这些字符串。
数组 arr 是一个多维数组 时,JavaScript 会以迭代的方式调用 toString() 方法把所有数组都转换为字符串。
let arr = [[1, [2, 3], [4, 5]], [6, [7, [8, 9], 0]]]; // 定义多维数组
let str = arr.toString() // 把数组转换为字符串
console.log(str); // 返回字符串1,2,3,4,5,6,7,8,9,0
3.Array.toLocalString()方法
(1)数字转换为字符串
把数字转换为字符串,使用本地数字格式顺序;当数字是四位及以上时,toLocaleString()会让数字三位三位一分隔,并以逗号隔开。
let str = 123
console.log(str.toString());//123
console.log(str.toLocaleString());//123
let str1 = 12345
console.log(str1.toString());//12345
console.log(str1.toLocaleString());//12,345
(2)Array 数组 转化成 字符串
将数组转化成字符串,并用逗号隔开。
let arr = [1,2,3,4,5]
console.log(arr.toLocaleString());//1,2,3,4,5
(3)将 Date 转化成字符串
将Date对象转化成字符串,返回的字符串根据本地规则格式化。
let data =new Date()
console.log(data);//Sat Jul 30 2022 21:05:47 GMT+0800 (中国标准时间)
console.log(data.valueOf());//1659186347359
console.log(data.toString());//Sat Jul 30 2022 21:05:47 GMT+0800 (中国标准时间)
console.log(data.toLocaleString());//2022/7/30 21:05:47
4.总结以上就是toString()和toLocaleString()两点区别
- 当数字是四位数及以上时,toLocaleString()让数字三位三位一分隔,并以逗号隔开。
- 当目标是标准时间格式时,用以上两种方法获取的时间是有区别的。
- 如果是为了返回时间类型的数据,推荐使用toLocaleString()。若是在后台处理字符串,请务必使用toString()。