javascript - 从Javascript中的数组创建一个新的对象数组
问题描述
所以我觉得这应该很容易,但我无法弄清楚。
为了简化,我需要动态生成一个数组。然后我需要我的代码来构建一个基于该数组中间的对象列表。
array = [a, b, c, d];
start = array[0];
finish = array[array.length - 1];
middle = [
{ middle: array[1] },
{ middle: array[2] }
]
我需要它是动态的,所以我不能硬编码我的中间值,因为数组长度不是一成不变的。我假设我需要一个loop
函数来遍历我的数组,但除了在 DOM 中创建一个列表之外,我从未将它用于任何事情。我觉得我在想这个什么的,因为这应该很容易......我所做的一切都会破坏我的代码。
我最近的尝试是:
middle = [
for (i = 1; i < array.length - 2; i++) {
return { middle: array[i] };
}
]
我想我明白为什么它不起作用了。它只是返回我想要的,但我认为这个值永远不会被存储。
解决方案
只需通过映射到您的目标格式来调整@chazsolo 对您预期输出的回答。
const array = [1,2,3,4,5];
const middle = array.slice(1, -1).map(item => ({middle: item}));
console.log(middle);
推荐阅读
- scala - Spark-Straming 中的 DStream 到 Rdd
- c# - 水晶报表中的无界字段在运行时通过传递参数
- algorithm - 降低歌曲中的一个频率
- c - 在位域结构中,控制器是读取整个值还是特定字节
- regex - 使用正则表达式在 Bash 中的引号内添加参数
- r - R在BASH中的粘贴功能等效?
- c - C- 我的归并排序算法有什么问题?
- android - 尝试为 Android Studio 设置更多内存后创建 JVM 失败
- reporting-services - SSRS FetchXML 报表在 Visual Studi 中工作 - 在 Dynamics 365 中为空
- python - 需要建议用数据集分配 XY 坐标