3

我正在寻找一个 JavaScript 函数,它接受两个长度相等的字符串数组并输出一个与输入数组长度相同的字符串数组,其中包含输入数组的元素级联字符串。是否有内置的 JavaScript 函数可以做到这一点?

另外,当元素级连接完成时,我想在连接的元素之间添加一个字符串。例如,这样对于每个 都是如此i

outputArray[i] = inputArray1[i] + " - " + inputArray2[i]
4

1 回答 1

6

您可以使用单个数组减少数组。这也适用于多个阵列。

var inputArray1 = ['abc', 'def', 'ghi'],
    inputArray2 = ['3', '6', '9'],
    outputArray = [inputArray1, inputArray2].reduce((a, b) => a.map((v, i) => v + ' - ' + b[i]));

console.log(outputArray);

更多功能

var inputArray1 = ['abc', 'def', 'ghi'],
    inputArray2 = ['3', '6', '9'],
    outputArray = [inputArray1, inputArray2]
        .reduce((a, b) => a.map((v, i) => [].concat(v, b[i]))) // get single parts
        .map(a => a.join(' - '));                              // join inner arrays

console.log(outputArray);

于 2018-08-02T19:08:06.953 回答