JS数组转字符串(3种方法)和字符串转数组(2种)

简介: JS数组转字符串(3种方法)和字符串转数组(2种)
一:数组转字符串(3种方法)

同样是数组转字符串,toString(),toLocaleString(),join(),join(',')的区别是什么?


JavaScript 允许数组与字符串之间相互转换。其中 Array 方法对象定义了 3 个方法,可以把数组转换为字符串,如表所示。

数组方法 说明
toString() 将数组转换成一个字符串
toLocaleString() 把数组转换成本地约定的字符串
join() 将数组元素连接起来以构建一个字符串
1:join()方法用于把数组中的所有元素放入一个字符串

元素是通过指定的分隔符进行分隔的

join()指定的分隔符 说明
join() 可理解为直接变成字符串,默认逗号分隔
join(' ') 空连接
join(' ,')或者 join(' - ')或者 join(' 。') 中间这个逗号是手动添加的,也可以改成别的比如、。! -等等都可以
// join()
var a= ["00", "01", "02", "03", "04"]
var b=  a.join()      
console.log(b)
console.log( typeof b)
//打印结果  00,01,02,03,04
// join('')
var a= ["00", "01", "02", "03", "04"]
var b=  a.join('')      
console.log(b)
console.log( typeof b)
//打印结果  0001020304
// join(',')
var a= ["00", "01", "02", "03", "04"]
var b=  a.join(',')      
console.log(b)
console.log( typeof b)
//打印结果  00,01,02,03,04
或者
// join('-')
var a= ["00", "01", "02", "03", "04"]
var b=  a.join('-')      
console.log(b)
console.log( typeof b)
//打印结果  00-01-02-03-04
或者
// join('!')
var a= ["00", "01", "02", "03", "04"]
var b=  a.join('!')      
console.log(b)
console.log( typeof b)
//打印结果 00!01!02!03!04
2:toString()方法可把一个逻辑值转换为字符串,并返回结果
var a= ["00", "01", "02", "03", "04"]
var c = a.toString();  //把数组转换为字符串
console.log(c)
console.log(typeof c);  //返回字符串string,说明是字符串类型
//打印结果  00,01,02,03,04

toString()方法不可以指定分隔符,但是我们可以通过replace()方法指定替换

var a= ["00", "01", "02", "03", "04"]
var f = a.toString().replace(/,/gi,'-')
console.log(f)
//打印结果:00-01-02-03-04
3:toLocaleString()

把数组转换成本地约定的字符串

var a= ["00", "01", "02", "03", "04"]
var e = a.toLocaleString();  
console.log(e)
console.log(typeof e);  
//打印结果:00,01,02,03,04

demo

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <script src="http://code.jquery.com/jquery-1.8.0.min.js"></script>
        <title></title>
    </head>
    <body>
    </body>
    <script type="text/javascript">
        var a= ["00", "01", "02", "03", "04"]
        //1:
        var b=  a.join(',')      
        console.log(b)
        console.log( typeof b)
        //2:
        var c = a.toString();  //把数组转换为字符串
        console.log(c)
        console.log(typeof c);  //返回字符串string,说明是字符串类型
        //3:
        var d = a.join();  //把数组转换为字符串
        console.log(d)
        console.log(typeof d);  //返回字符串string,说明是字符串类型
        //4:
        var e = a.toLocaleString();  //把数组转换为字符串
        console.log(e)
        console.log(typeof e);  //返回字符串string,说明是字符串类型
    </script>
</html>

二:字符串转数组(2种方法)
字符串方法 说明
split() 方法 将字符串转换成一个数组
扩展运算符(...) es6里面的扩展运算符

字符串转数组

1:split() 方法用于把一个字符串分割成字符串数组

同样是用于把一个字符串分割成字符串数组,split(','),split(),split(' ')的区别是什么?

split()方法 说明
split(',')
split() 可理解为直接变成字符串,默认逗号分隔
split(' ') 空字符串 每个字符之间都会被分割
var arr = 'aa,bb,cc,dd'
var newStr = arr.split(',')
console.log(newStr) 
// 打印结果:["aa", "bb", "cc", "dd"]
var arr = 'aa,bb,cc,dd'
var newStr = arr.split()
console.log(newStr)
// 打印结果: ["aa,bb,cc,dd"]

如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割

var arr = 'aa,bb,cc,dd'
var newStr = arr.split('')
console.log(newStr) 
//打印结果: ["a", "a", ",", "b", "b", ",", "c", "c", ",", "d", "d"]
2:es6里面的扩展运算符
var arr = 'aa,bb,cc,dd'
var newStr = [...arr]
console.log(newStr) 
//打印结果 ["a", "a", ",", "b", "b", ",", "c", "c", ",", "d", "d"]


相关文章
|
26天前
|
JavaScript 前端开发 程序员
前端原生Js批量修改页面元素属性的2个方法
原生 Js 的 getElementsByClassName 和 querySelectorAll 都能获取批量的页面元素,但是它们之间有些细微的差别,稍不注意,就很容易弄错!
|
1月前
|
Web App开发 JavaScript 前端开发
如何确保 Math 对象的方法在不同的 JavaScript 环境中具有一致的精度?
【10月更文挑战第29天】通过遵循标准和最佳实践、采用固定精度计算、进行全面的测试与验证、避免隐式类型转换以及持续关注和更新等方法,可以在很大程度上确保Math对象的方法在不同的JavaScript环境中具有一致的精度,从而提高代码的可靠性和可移植性。
|
2月前
|
缓存 监控 前端开发
JavaScript 实现大文件上传的方法
【10月更文挑战第17天】通过以上步骤和方法,我们可以实现较为可靠和高效的大文件上传功能。当然,具体的实现方式还需要根据实际的应用场景和服务器要求进行调整和优化。
|
23天前
|
监控 JavaScript Java
Node.js中内存泄漏的检测方法
检测内存泄漏需要综合运用多种方法,并结合实际的应用场景和代码特点进行分析。及时发现和解决内存泄漏问题,可以提高应用的稳定性和性能,避免潜在的风险和故障。同时,不断学习和掌握内存管理的知识,也是有效预防内存泄漏的重要途径。
118 52
|
1月前
|
JavaScript 前端开发 索引
js中DOM的基础方法
【10月更文挑战第31天】这些DOM基础方法是操作网页文档结构和实现交互效果的重要工具,通过它们可以动态地改变页面的内容、样式和行为,为用户提供丰富的交互体验。
|
1月前
|
缓存 JavaScript UED
js中BOM中的方法
【10月更文挑战第31天】
|
25天前
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
38 5
|
27天前
|
JavaScript 前端开发 数据处理
模板字符串和普通字符串在浏览器和 Node.js 中的性能表现是否一致?
综上所述,模板字符串和普通字符串在浏览器和 Node.js 中的性能表现既有相似之处,也有不同之处。在实际应用中,需要根据具体的场景和性能需求来选择使用哪种字符串处理方式,以达到最佳的性能和开发效率。
|
26天前
|
JavaScript 前端开发 索引
JavaScript学习第二章--字符串
本文介绍了JavaScript中的字符串处理,包括普通字符串和模板字符串的使用方法及常见字符串操作方法如`charAt`、`concat`、`endsWith`等,适合前端学习者参考。作者是一位热爱前端技术的大一学生,专注于分享实用的编程技巧。
22 2
|
26天前
|
JavaScript 前端开发
js中的bind,call,apply方法的区别以及用法
JavaScript中,`bind`、`call`和`apply`均可改变函数的`this`指向并传递参数。其中,`bind`返回一个新函数,不立即执行;`call`和`apply`则立即执行,且`apply`的参数以数组形式传递。三者在改变`this`指向及传参上功能相似,但在执行时机和参数传递方式上有所区别。
25 1