JavaScript--String.split()和Array.join()方法
初学JS的时候发现了一对很有意思的方法---String.split()和Array.join()方法,他们的功能可以看作是互为逆向操作。
String.split()将字符串转换为数组,语法为String.split(fn,length), fn代表分隔符,是必需值,他可以是一个字符串或正则表达式,如果省略分隔符,被返回的数组将包含 index[0] 中的整个字符串。如果分隔符是 "",被返回的数组将是间隔单个字符的数组。
length 为可选值,可以指定返回数组的最大长度。不填写的时候表示没有长度限制。
var str = "Hello JS"; // 字符串
var arr1 = str.split("o"); // 以字符串 'o' 进行分隔
console.log(arr1) // ==> ['Hell', ' JS']
var arr2 = str.split(/[\s\n]/); // 以空格与换行进行分隔
console.log(arr2) // ==> ['Hello', 'JS']
var arr3 = str.split(); // 省略分隔符
console.log(arr3) // ==> ['Hello JS']
var arr4 = str.split(""); // 分隔符为 ""
console.log(arr4) // ==> ['H', 'e', 'l', 'l', 'o', ' ', 'J', 'S']
var arr5 = str.split("o",1); // 带上 length 参数
console.log(arr5) // ==> ['Hell']
Array.join() 方法可将所有数组元素结合为一个字符串。它的行为类似 toString(),但是可以规定分隔符,如果省略分隔符,默认使用逗号进行分隔。
var arr = ['A', 'B', 'C']; // 创建一个数组
var str1 = arr.join();
console.log(str1) // => "A,B,C"
var str2 = arr.join(" ");
console.log(str2) // => "A B C"
var str3 = arr.join("");
console.log(str3) // => "ABC"
var str4 = arr.join("D");
console.log(str4) // => "ADBDC"
var arr1 = new Array(5); // 创建一个长度为5的空数组
var str5 = arr1.join('5');
console.log(str5) // => "5555":4个5组成的字符串
初学前端,第一次发文,如有不对欢迎各位大佬指正