join()方法将数组元素用指定分隔符连接成新字符串,不修改原数组;默认逗号分隔,支持自定义分隔符、处理边界情况,并比toString()更可控。

join() 方法把数组的所有元素连接成一个字符串,用指定的分隔符(默认是逗号)拼接,返回新字符串,不修改原数组。
基础用法:默认逗号分隔
调用 join() 时不传参数,会自动用英文逗号 "," 连接所有元素:
-
['a', 'b', 'c'].join()→"a,b,c" -
[1, 2, 3].join()→"1,2,3"(数字会被隐式转为字符串) -
[undefined, null, 0, false, ''].join()→",,0,false,"(undefined和null转为空字符串)
自定义分隔符:传入任意字符串
把分隔符作为参数传入,可以是空格、横线、换行符等:
-
['apple', 'banana', 'cherry'].join(' + ')→"apple + banana + cherry" -
[2023, 10, 5].join('-')→"2023-10-5"(常用于生成日期格式) -
['line1', 'line2', 'line3'].join('\n')→ 多行字符串,适合拼接文本内容
注意边界情况
空数组或单元素数组也能正常工作:
立即学习“Java免费学习笔记(深入)”;
-
[].join('|')→""(空字符串) -
['hello'].join('-')→"hello"(只有一个元素时,分隔符不生效) -
[1, , 3].join('*')→"1**3"(稀疏数组中空位也被视作undefined,转为空字符串)
和 toString() 的区别
join() 可控性强;toString() 固定用逗号,且对嵌套数组会调用子数组的 toString(),容易混淆:
-
[[1,2], [3,4]].join('-')→"1,2-3,4" -
[[1,2], [3,4]].toString()→"1,2,3,4"(丢失结构信息)


















