87 votes

Comment puis-je extraire les valeurs de propriété d'un objet JavaScript dans un tableau ?

Donné un objet JavaScript :

var dataObject = {
   object1: {id: 1, name: "Fred"}, 
   object2: {id: 2, name: "Wilma"}, 
   object3: {id: 3, name: "Pebbles"}
};

Comment extraire efficacement les objets internes dans un tableau ? Je n'ai pas besoin de maintenir une poignée sur l'objet[n] IDs.

var dataArray = [
    {id: 1, name: "Fred"}, 
    {id: 2, name: "Wilma"}, 
    {id: 3, name: "Pebbles"}]

81voto

Anonymous Points 141
var dataArray = Object.keys(dataObject).map(function(k){return dataObject[k]});

79voto

Murali VP Points 2555
var dataArray = [];
for(var o in dataObject) {
    dataArray.push(dataObject[o]);
}

37voto

Thoran Points 3957

Version ES6 :

var dataArray = Object.keys(dataObject).map(val => dataObject[val]);

31voto

rzymek Points 3464

Utilisation du trait de soulignement :

var dataArray = _.values(dataObject);

16voto

Mohammad Adil Points 25444

Avec jQuery, vous pouvez le faire comme ça -

var dataArray = $.map(dataObject,function(v){
     return v;
});

Démo

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X