javascript - 如何使用 forEach 将 javascript 中的数组元素转换为独立数组

标签 javascript arrays ecmascript-6

我正在尝试将一个数组的元素转换为独立的数组,然后将这些数组添加到一个新数组中。这就是我尝试过的。但无法让它工作。 splice 方法无法与 forEach 一起正常工作,forEach 仅运行半个数组然后退出。

我期望的是这样的 [['Apple'],['Banana'],['Mango'],['Pomegranate']]

const fruits = ['Apple', 'Banana', 'Mango', 'Pomegranate']

function removeArrayItem(item,index){
    return fruits.splice(0,1)
}

const fruitsList = []

fruitsList.unshift(fruits.forEach(removeArrayItem))

console.log(fruitsList)

最佳答案

你可以这样做:

const fruits = ['Apple', 'Banana', 'Mango', 'Pomegranate']

console.log(fruits.map(fruit => [fruit]));

不过,如果你在 forEach 上设置,你可以这样做:

const fruits = ['Apple', 'Banana', 'Mango', 'Pomegranate'];
const result = [];

fruits.forEach(fruit => result.push([fruit]));

console.log(result);

类似这样的东西适用于拼接:

const fruits = ['Apple', 'Banana', 'Mango', 'Pomegranate'];
const initialLength = fruits.length;
const result = [];

for(let i = 0; i < initialLength; i++) {
    result.push(fruits.splice(0,1));
}

console.log(result);

关于javascript - 如何使用 forEach 将 javascript 中的数组元素转换为独立数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58527621/

相关文章:

javascript - 在 JavaScript 术语中,你如何命名这种对象?

javascript - 10-15 分钟后浏览器崩溃

arrays - 为什么 `Array(0,1,2) == Array(0,1,2)` 没有返回预期的结果?

arrays - 复制相同类型的数组

arrays - 按顺序连接数组元素 PostgreSQL

javascript - Angular1/JavaScript - 改进算法条件

javascript - 为什么警告框会阻止 chrome 中的所有选项卡

javascript - Node.js 子进程 fork : CPU affinity

Javascript list : Edit and Delete button

javascript - JS中extends class旁边的<>有什么作用?