2012-01-31 10 views

Respuesta

9

Creo que no hay nada de malo con su solución.

Esta es una más corta:

var arr = $.map(objectLiteral, function (value) { return value; }); 
7

Su método es fina, clara y legible. Para hacerlo sin jQuery, utilice la sintaxis for (..in..):

var arr = []; 
for (prop in objectLiteral) { 
    arr.push(objectLiteral[prop]); 
} 
2

En JS vainilla ...

Si queremos convertir un objeto literal

var obj = { 
species: 'canine', 
name: 'Charlie', 
age: 4 
} 

en una matriz de matrices

[['species', 'canine'], ['name', 'Charlie'], ['age', 4]] 

aquí hay una manera

function objToArr(obj){ 
    var arr = []; 

    for (var key in obj){ 
    arr.push([key, obj[key]]); 
    } 
    return arr; 
} 
Cuestiones relacionadas