join()方法用于将数组元素拼接为字符串,而非合并数组;合并数组应使用concat()或扩展运算符…,如[…arr1, …arr2]。

在javaScript中,join() 方法并不是用来连接多个数组的,而是用于将数组中的元素拼接成一个字符串。如果你想要合并多个数组,应该使用其他方法,比如 concat()、扩展运算符(…)等。
1. join() 方法的作用
注意:join() 是把数组元素变成字符串,用指定的分隔符连接起来。
例如:
const arr = [‘a’, ‘b’, ‘c’];
console.log(arr.join(‘-‘)); // 输出 “a-b-c”
它不能直接用来“合并多个数组”。
2. 正确合并数组的方法
以下是几种常用的方式来连接多个数组:
- 使用 concat():
const arr1 = [1, 2];
const arr2 = [3, 4];
const arr3 = [5, 6];
const merged = arr1.concat(arr2, arr3);
console.log(merged); // [1, 2, 3, 4, 5, 6] - 使用扩展运算符 …(推荐):
const arr1 = [1, 2];
const arr2 = [3, 4];
const arr3 = [5, 6];
const merged = […arr1, …arr2, …arr3];
console.log(merged); // [1, 2, 3, 4, 5, 6] - 多维数组扁平化(如果数组是嵌套的):
const arrays = [[1, 2], [3, 4], [5, 6]];
const merged = arrays.flat();
console.log(merged); // [1, 2, 3, 4, 5, 6]
3. 如果你真的想用 join 处理多个数组?
你可以先合并数组,再使用 join:
const arr1 = [1, 2];
const arr2 = [3, 4];
const result = […arr1, …arr2].join(‘-‘);
console.log(result); // “1-2-3-4”
这会先把数组合并,然后转为字符串。
基本上就这些。要连接数组用 concat 或扩展运算符,join 是转字符串用的,别搞混了。