javascript – 使用数组delimeters(“intersperse”)连接数组序列

是否有一个函数可以让我连接几个数组,它们之间有分隔符(分隔符也是数组),类似于join的工作原理但不限于字符串?

该函数可以是标准JS或主要库的一部分,例如lodash(这就是它在标签中引用的原因).

以下是一个用法示例:

let numbers = [[1], [2], [3]];
let result = _.joinArrays(numbers, [0]);
console.log(result); 
//printed: [1, 0, 2, 0, 3]

这类似于:

let strings = ["a", "b", "c"];
let result = strings.join(",");
console.log(result);
//printed: "a,b,c";

但是,无法使用join,因为它将值转换为字符串,我不想发生这种情况.

但它适用于任何类型.

解决方法:

您可以简单地使用array.reduce来连接数组,并推送您想要用作分隔符的内容.

let numbers = [[1], [2], [3]];

let n = numbers.reduce((a, b) => a.concat(0, b))

console.log(n)
上一篇:[Javascript] Build lodash.omitBy and lodash.pickBy with Object.fromEntries + Object.entry (isomorphi


下一篇:javascript-在Lodash.js / Underscore.js中,如何为每个元素添加索引?