web-dev-qa-db-fra.com

javascript crée un tableau à partir de pour boucle

J'ai une plage d'années stockée dans deux variables. Je veux créer un tableau des années de la gamme.

quelque chose comme:

var yearStart = 2000;
var yearEnd = 2040;

var arr = [];

for (var i = yearStart; i < yearEnd; i++) {

     var obj = {
        ... 
     };

      arr.Push(obj);
}

Que devrais-je mettre à l'intérieur de l'obj?

Le tableau que je voudrais générer serait comme:

arr = [2000, 2001, 2003, ... 2039, 2040]
25
Mauro74

encore plus court si vous pouvez perdre la valeur yearStart:

var yearStart = 2000;
var yearEnd = 2040;

var arr = [];

while(yearStart < yearEnd+1){
  arr.Push(yearStart++);
}

UPDATE: Si vous pouvez utiliser la syntaxe ES6, vous pouvez le faire de la façon proposée ici :

let yearStart = 2000;
let yearEnd = 2040;
let years = Array(yearEnd-yearStart+1)
    .fill()
    .map(() => yearStart++);
35
Mat

Vous devez appuyer sur i

var yearStart = 2000;
var yearEnd = 2040;

var arr = [];

for (var i = yearStart; i < yearEnd+1; i++) {
    arr.Push(i);
}

Ensuite, votre tableau résultant sera:

arr = [2000, 2001, 2003, ... 2039, 2040]

J'espère que cela t'aides

18
Littm
var yearStart = 2000;
var yearEnd = 2040;

var arr = [];

for (var i = yearStart; i <= yearEnd; i++) {

     arr.Push(i);
}
5
Mihai Iorga

Supprimez obj et faites simplement ceci dans votre boucle for:

arr.Push(i);

De plus, la condition i < yearEnd n'inclut pas la dernière année. Changez-la donc en i <= yearEnd.

1
skunkfrukt