我需要从 for 循环中获得特定格式的输出,这些输出是对象内部以及数组内部的元素。输出应如下所示:
[
{
day1: 0,
day2: 0,
day3: 0
}
]
我知道 .push 可能是这里的关键,但我不确定要遵循哪种语法。
解释我想做的事情的最简单方法如下:
var element = [];
for (let i = 1; i <= 3; i++) {
element.push({"day"i: 0});
}
console.log(element);
var elements = [];
for (let i = 1; i <= 3; i++) {
const obj = {};
obj["day" + i] = 0;
elements.push(obj);
}
console.log(elements);
输出将是一个数组,其中包含带有“day1”、“day2”和“day3”等键的对象,每个对象都使用值 0 进行初始化。
如欺骗所示,要添加动态对象属性,请使用
.push({ ["day" + i]: 0 })
。
但是现在你要添加 3 个对象,但你只需要 1. 在循环之前创建对象。
var element = [];
var tmpObject = {};
for (let i = 1; i <= 3; i++) {
tmpObject["day" + i] = 0;
}
element.push(tmpObject);
console.log(element);