我将年份范围存储为两个变量。我想创建一个范围内的年份数组。
类似的东西:
var yearStart = 2000;
var yearEnd = 2040;
var arr = [];
for (var i = yearStart; i < yearEnd; i++) {
var obj = {
...
};
arr.push(obj);
}
我应该把什么放在obj里?
我想要生成的数组如下:
arr = [2000, 2001, 2003, ... 2039, 2040]
答案 0 :(得分:36)
会更短:
var yearStart = 2000;
var yearEnd = 2040;
var arr = [];
while(yearStart < yearEnd+1){
arr.push(yearStart++);
}
更新: 如果您可以使用ES6语法,则可以按照建议here:
的方式进行let yearStart = 2000;
let yearEnd = 2040;
let years = Array(yearEnd-yearStart+1)
.fill()
.map(() => yearStart++);
答案 1 :(得分:18)
您需要推送i
var yearStart = 2000;
var yearEnd = 2040;
var arr = [];
for (var i = yearStart; i < yearEnd+1; i++) {
arr.push(i);
}
然后,您得到的数组将是:
arr = [2000, 2001, 2003, ... 2039, 2040]
希望这有帮助
答案 2 :(得分:6)
var yearStart = 2000;
var yearEnd = 2040;
var arr = [];
for (var i = yearStart; i <= yearEnd; i++) {
arr.push(i);
}
答案 3 :(得分:1)
删除obj
,然后在for循环中执行此操作:
arr.push(i);
此外,i < yearEnd
条件不包括最后一年,因此请将其更改为i <= yearEnd
。