忽略点:
印象中记得这两个是对数组还有字符串进行分割的,但是记得不是很清楚到底是哪个是对字符串/数组进行分割的,对于里面参数的使用也不是很明确- 查看官方文档
split()
是一个对字符串进行处理的函数 -String.split()
,join()
就是一个数组的方法 -Array.join()
split()
-
用于把一个字符串分割为字符串数组
-
语法:
stringObject.split(separator,howmany)
- `separator`: 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject - `howmany`: 可选。该参数可指定返回的数组的最大长度
-
疑惑点:
以前看到有这样形式的分割:1.s.split(',')
,2.s.split(' ')
,然后在实际用的时候就不太明确split()
的参数到底是什么 -
其实
split()
的第一个参数是可以根据需求随便写的,比如要分割这个字符串a = 'How are you'
,我们希望将每一个单词完整的分割出来,那么就是要得到['How', 'are', 'you']
,根据观察字符串a
的每一个单词之间都有一个空格隔开,那么就可以把第一个参数separator
设置为空格,即为a.split(' ')
,根据空格来分割 -
可以这么理解,第一个参数
separator
设置了什么程序就会在字符串中查找这个参数,如果他在字符串中存在,就从这个参数开始分割,如果不存在就把整个字符串输出,如果参数没有指定实际的内容,就把整个字符串都分割 -
参数
separator
是根据实际需求来规定的
let str = 'How are you';
console.log(str.split('')); // ['H', 'o', 'w', ' ', 'a', 'r', 'e', ' ', 'y', 'o', 'u']
console.log(str.split(' ')); // ['How', 'are', 'you']
console.log(str.split(',')); // ['How are you']
join()
-
把数组的所有元素转为一个字符串
-
语法:
array.join(separator)
separator
,可选。指定要使用的分隔符。如果省略该参数,则使用逗号
作为分隔符。
-
返回值:返回一个字符串,该字符串是通过把 arrayObject 的每个元素转换为字符串,然后把这些字符串连接起来,在两个元素之间插入 separator 字符串而生成的。
-join
的参数是一个分隔符,比如想要把一个数组转为字符串并且以-
连接,那么参数separator
就可以写成-
-arr.join('-')
-
join()
跟split()
完全相反,一个将字符串转为数组,一个将数组转为字符串,并且join()
的参数是你写他是什么得到的字符串就以什么连接,并不像split()
那样需要考虑separator
是否存在于字符串
let arr= ['How', 'are', 'you'];
console.log(arr.join()); // How,are,you
console.log(arr.join('')); // Howareyou
console.log(arr.join(' ')); // How are you
console.log(arr.join(',')); // How,are,you