Comment puis-je parcourir un tableau existant et ajouter les éléments à un nouveau tableau.
var array = [];
forEach( calendars, function (item, index) {
array[] = item.id
}, done );
function done(){
console.log(array);
}
Le code ci-dessus fonctionnerait normalement dans JS, pas sûr de l'alternative dans node js
. J'ai essayé .Push
et .splice
mais aucun n'a fonctionné.
Consultez l'API Array de Javascript pour plus de détails sur la syntaxe exacte des méthodes Array. Modifier votre code pour utiliser la syntaxe correcte serait:
var array = [];
calendars.forEach(function(item) {
array.Push(item.id);
});
console.log(array);
Vous pouvez également utiliser la méthode map()
pour générer un tableau contenant les résultats de l'appel de la fonction spécifiée sur chaque élément. Quelque chose comme:
var array = calendars.map(function(item) {
return item.id;
});
console.log(array);
Et, depuis qu'ECMAScript 2015 a été publié, vous pouvez commencer à voir des exemples utilisant let
ou const
à la place de var
et de la syntaxe =>
pour la création de fonctions. Ce qui suit est équivalent à l'exemple précédent (sauf qu'il peut ne pas être pris en charge dans les anciennes versions de nœud):
let array = calendars.map(item => item.id);
console.log(array);
Voici un exemple qui peut vous donner des astuces pour parcourir un tableau existant et ajouter des éléments à un nouveau tableau. J'utilise UnderscoreJS Module à utiliser comme fichier utilitaire.
Vous pouvez télécharger depuis ( https://npmjs.org/package/underscore )
$ npm install underscore
Voici un petit extrait montrant comment vous pouvez le faire.
var _ = require("underscore");
var calendars = [1, "String", {}, 1.1, true],
newArray = [];
_.each(calendars, function (item, index) {
newArray.Push(item);
});
console.log(newArray);
var array = [];
//length array now = 0
array[array.length] = 'hello';
//length array now = 1
// 0
//array = ['hello'];//length = 1