如何对嵌套数组使用Array.Join:子数组用$分隔,父数组用;分隔
解决方案
这问题很容易搞定,咱们只需要分两步处理这个嵌套数组的拼接逻辑就行:
核心思路
先把每个子数组内部的元素用$连接起来,得到一个由拼接好的字符串组成的新数组,再把这个新数组用;连接,就能得到你要的结果。
代码实现
最直观简洁的写法是结合map和join方法:
let arr = [[1, 2], [3, 4], [5,6]]; const formattedStr = arr.map(subArray => subArray.join('$')).join(';'); console.log(formattedStr); // 输出: 1$2;3$4;5$6
代码解释
arr.map(subArray => subArray.join('$')):遍历父数组中的每个子数组,对每个子数组执行join('$'),把子数组里的元素用$拼接成字符串。这一步会生成一个新数组:['1$2', '3$4', '5$6']。.join(';'):把上面生成的新数组中的所有字符串用;连接起来,最终得到符合要求的结果字符串。
备选写法(用reduce)
如果你习惯用reduce,也可以这么写,效果是一样的:
let arr = [[1, 2], [3, 4], [5,6]]; const formattedStr = arr.reduce((resultArr, subArray) => { resultArr.push(subArray.join('$')); return resultArr; }, []).join(';'); console.log(formattedStr);
内容的提问来源于stack exchange,提问作者QqQq
相关产品推荐
相关产品推荐

