8
votes

Convertir le tableau JSON en array JavaScript

J'ai un tableau JSON que je souhaite convertir en une matrice JavaScript unie:

Ceci est mon tableau JSON: P>

var users = ["John", "Simon", "Randy"]


3 commentaires

J'ai aussi trouvé cela utile: Stackoverflow.com/Questtions/4375537/...


Est-ce que vous pouvez me dire que c'est un graphique JSON ou un objet JSON?


@anil Cela pourrait aider: Stackoverflow.com/a/12289961/386579


3 Réponses :


10
votes

utilisateurs est déjà un objet JS (pas JSON). Mais ici, vous allez: xxx

edit: Insérez des éléments à une position correcte dans la matrice. Merci @rotora .

Peut-être qu'il est plus facile de ne pas créer ce genre d'objet en premier lieu . Comment est-ce créé?


4 commentaires

Ce tableau JSON est créé de manière dynamique avec Zend_json :: Encode, mais la réponse est transmise à une fonction JS, qui accepte une matrice JavaScript unie.


@dskanth: Si vous ne faites rien de fantaisie, utilisez la fonction native json_encode . Il ne fera que transformer les tableaux associatifs dans des objets JSON et des produits indexés numériques en matrices.


Soyez prudent, votre code peut ne pas attribuer les valeurs aux index corrects, car vous supposez que les propriétés de l'objet sont itélées triées. si (! isnan (+ i)) {users_array [+ i] = les utilisateurs [i]} peuvent être mieux.


@Rotora: Vous avez raison. Non, je n'ai pas supposé qu'ils sont triés, mais je n'ai pas fait attention à la commande ... Je vais ajouter ceci à ma réponse.



4
votes

Juste pour le plaisir - Si vous connaissez la longueur de la matrice, les suivants fonctionneront ( et semble être plus rapide ): xxx


0 commentaires

0
votes

Eh bien, voici une solution JQuery + JavaScript, pour ceux qui sont intéressés:

var user_list = [];

$.each( users, function( key, value ) {
    user_list.push( value );    
});

console.log(user_list);


0 commentaires