在没有任何公共属性的情况下垂直连接数组的更好方法



输入:

a=[[1,2,3], [4,5,6]]
b=[[7,8], [9,10]]

输出:

c= [[1,2,3,7,8][4,5,6,9,10]]

我正在使用

for(var i=0;i<a.length;i++) {
  c[i] = a[i].concat(b[i]);
}

有没有更好的方法可以做到这一点,使用任何JavaScript内置函数?

您所拥有的看起来非常好,一个循环,而且它简单可读-为了更好地衡量,如果您喜欢功能性稍强(尽管略有不同(的方法,那么使用数组方法基本上是一样的。

var a = [[1,2,3], [4,5,6]];
var b = [[7,8], [9,10]];
var c = a.map(function(el, i) {
   return el.concat(b[i]);
});
console.log(c); // => [[1,2,3,7,8], [4,5,6,9,10]];

现在的另一个例子使用析构函数

var a = [[1,2,3], [4,5,6]];
var b = [[7,8], [9,10]];
var c = a.map((el, i) => {
   return [...a[i], ...b[i]];
});
console.log(c);
// → [[1,2,3,7,8], [4,5,6,9,10]];

相关内容

  • 没有找到相关文章