JS字符串和数组之间的转换 图片看不了?点击切换HTTP 返回上层
使用字符串的 split() 方法可以根据指定的分隔符把字符串切分为数组。
如果使用数组的 join() 方法,可以把数组元素连接为字符串。
如果使用数组的 join() 方法,可以把数组元素连接为字符串。
示例1
如果参数为空字符串,则 split() 方法能够按单个字符进行切分,然后返回与字符串等长的数组。var s = "JavaScript"; var a = s.split(""); //按字符空隙分隔 console.log(s.length); //返回值为10 console.log(a.length); //返回值为10
示例2
如果参数为空,则 split() 方法能够把整个字符串作为一个元素的数组返回。var s = "JavaScript"; var a = s.split(""); //空分隔 console.log(a.constructor == Array); //返回true,说明Array是实例 console.log(a.length); //返回值为1,说明没有对字符串进行分割
示例3
如果参数为正则表达式,则 split() 方法能够以匹配文本作为分隔符进行切分。var s = "a2b3c4d5e678f12g"; var a = s.split(/\d+/); //把以匹配的数字为分隔符来切分字符串 console.log(a); //返回数组[a,b,c,d,e,f,g] console.log(a.length); //返回数组长度为7
示例4
如果正则表达式匹配的文本位于字符串的边沿,则 split() 方法也执行切分操作,且为数组添加一个空数组。var s = "122a2b3c4d5e678f12g"; var a = s.aplit(/\d+/); console.log(a); console.log(a.length);如果在字符串中指定的分隔符没有找到,则返回一个包含整个字符串的数组。
示例5
split() 方法支持第二个参数,该参数是一个可选的整数,用来指定返回数组的最大长度。如果设置了该参数,则返回的数组长度不会大于这个参数指定的值;如果没有设置该参数,那么整个字符串都被分割,不会考虑数组长度。var s = "JavaScript"; var a = s.split("", 4); //按顺序从左到右,仅分切4个元素的数组 console.log(a); //返回数组[J,a,v,a] console.log(a.length); //返回值为4
示例6
如果想使返回的数组包括分隔符或分隔符的一个或多个部分,可以使用带子表达式的正则表达式来实现。var s = "aa2bb3cc4dd5e678f12g"; var a = s.split(/(\d)/); //使用小括号包含数字分隔符 console.log(a); //返回数组[aa,2,bb,3,cc,4,dd,5,e,6,,7,,8,f,1,,2,g]