《JavaScript》split和join
首先了解split和join两个函数
split
根据条件截断字符串,返回数组
//str.split(option,length) 字符串转数组 //option:表示分割依据 //length:用来分割的字符串长度,只有在option为''时生效
var str = 'AB CD' str.split() //["AB CD"] 字符串为一个数组元素 str.split('') //["A", "B", " ", "C", "D"]每个字符为一个数组元素 str.split(' ') //["AB", "CD"]以空格为分割依据,空格被舍去 str.split(',') //["AB CD"]没有,号,所以没有被分割 str.split(3) //["AB CD"] //测试length var str = 'AB3CD' str.split(3) //["AB", "CD"] str.split(3,1) //["AB"] str.split('',3) //["A", "B", "3"] //测试正则表达式 var str = 'AB=3CD-(E+' str.split(/\w/) //["", "", "=", "", "", "-(", "+"] //被匹配到的字符A后面的B也可以匹配到,则把A变为''; //B的前面A也可以匹配到,所以变为'' //匹配不到的 -( 为一个数组元素 //匹配到的E前后都匹配不到,则E消失 str.split(/\w+/)//["", "=", "-(", "+"] 同理,这个匹配的不是单字符
join
//arr.join(option) 数组转字符串 //option:数据元素之间的间隔符号默认逗号,
var array = ['a','b','c'] array.join() //"a,b,c" array.join('') //"abc" //传入参数,效果相同 array.join(' ') //"a b c" array.join('123') //"a123b123c" array.join('+3') //"a+3b+3c"
字符串倒序有两种方案:思路都是字符串转化为数组,让数组完成倒序,最后数组转为字符串
/////////----字符串颠倒输出 //str[i],可以将字符串当做数据,取到下标为i的字符 //将字符串从后往前放入数组中,做出一个倒序的数组 //使用数组转字符串 function reverse(str){ var array = []; for(var i = str.length-1 ; i>=0 ; i--){//如果是 i++ 控制台会崩溃 array.push(str[i]) } return array.join(''); } var newStr = reverse('hello world') console.log(newStr)
/////----------字符串颠倒输出 ///利用数组的array.reverse方法做倒序 ///array.split([option])将字符串转为数组 function reverse(str){ return str.split('').reverse().join(''); } var newStr = reverse('hello world') console.log(newStr)