Javascript 如何循环两个数组,并按顺序返回一个包含值的数组?
这是一个愚蠢的问题,但我很难弄明白 假设我有两个数组:Javascript 如何循环两个数组,并按顺序返回一个包含值的数组?,javascript,arrays,Javascript,Arrays,这是一个愚蠢的问题,但我很难弄明白 假设我有两个数组: let a = ["I", "a"] let b = ["have", "cat"] 我想对它们进行循环,这样我的输出将是一个数组,它将变成: let c = ["I", "have", "a", "cat"] 我试图做一个嵌套的for循环,但是,我得到了一堆奇怪的错误。我也在尝
let a = ["I", "a"]
let b = ["have", "cat"]
我想对它们进行循环,这样我的输出将是一个数组,它将变成:
let c = ["I", "have", "a", "cat"]
我试图做一个嵌套的for循环,但是,我得到了一堆奇怪的错误。我也在尝试forEach,但我收到一条错误消息,说我的数组未定义。。。所以不确定该怎么办。一种快速方法是将数组
a
映射到,因此:
[a1,a2] ===> [[a1,b1], [a2,b2]]
并将结果阵列展平以生成:
[a1,b1,a2,b2]
演示
a=[“I”,“a”]
设b=[“have”,“cat”]
设c=[].concat(…a.map((e,i)=>[e,b[i]]);
console.log(c);//[“我”、“有”、“a”、“猫”]
谢谢!这就解决了我的问题。但是,您能解释一下为什么对数组使用扩展运算符吗?我很难理解为什么spread操作符基本上会展平数组并为我们节省一步spread操作符将[[a1,b1],[a2,b2]
更改为[a1,b1,a2,b2]
,基本上展平数组。有几种方法可以展平阵列;这只是其中之一。