Besoin de convertir des paires clé-valeur json à la norme de la matrice de
Je suis interperting une chaîne json dans une variable à l'aide de jquery parseJSON() fonction. Le problème est, il se tourne de mes données dans un objet au lieu d'un tableau 2d. Par exemple,
myData = $.parse(JSON(data));
myData.name//= "Bob"
Le problème est, "nom" n'est pas censé être un clé (en supposant que c'est le bon terme). Au lieu de cela, il devrait être:
myData[0] //= "name"
myData[1] //= "Bob"
Comment puis-je convertir des ce? Ou est-il une autre méthode que d'utiliser une boucle for pour marcher à travers l'indice d'un tableau (mais encore être en mesure d'accéder à la fois la clé et la valeur comme une chaîne de caractères comme vous le feriez dans un tableau 2d).
EDIT: C'est en quelques json qui est en cours d'utilisation (Remarque c'est BEAUCOUP plus long). C'est ce qui est donné pour les "données"
{"feat_3":"4356","feat_4":"45","feat_5":"564","feat_6":"7566"}
data
Ajout d'un extrait de json, c'est ce que vous recherchez?
Il semble un peu bizarre chose à faire, si vous n'avez pas l'esprit de mon dire. Pourquoi créer un tableau plat avec les clés et leurs valeurs?
où est bob? parce que ce serait comme feat_3 pourrait être bob au lieu de 4356
Ouais, j'ai utilisé votre exemple, plutôt que de le déplacer vers un "tableau plat", ce qui fait beaucoup plus de sens.
OriginalL'auteur Radley Sustaire | 2012-01-09
Vous devez vous connecter pour publier un commentaire.
Une fois que vous avez désérialiser les données (par exemple, vous avez
myData
, qui est un objet), vous pouvez faire une boucle à travers ses clés à l'aide de..
, et puis construire un tableau qui associe des clés et des valeurs:Depuis
myData
est le résultat de la désérialisation du JSON dansdata
, nous savons quemyData
est un objet générique (par exemple, juste un{}
par opposition à unnew Foo
ou quelque chose comme ça), donc nous n'avons même pas besoin dehasOwnProperty
. Si nous ne le savions pas, et nous ne voulions énumérermyData
's propre de clés et de valeurs, nous allons ajouter unehasOwnProperty
vérifier:Il n'y a pas de raison de le faire que dans ton cas, à moins que quelqu'un a été marinage avec
Object.prototype
(dans ce cas, prendre derrière le bûcher, de leur donner une sévère se cacher, et puis demandez-leur d'écrire "je ne vais pas bricolons avecObject.prototype
plusieurs centaines de fois sur le tableau), mais à chaque fois que vous utilisezfor..in
, il est toujours bon de s'arrêter et de penser: A) L'objet est garanti d'être à la vanille, et B) Si non, voulez-vous seulement de ses propriétés, ou voulez-vous aussi de ceux qu'il hérite?OriginalL'auteur T.J. Crowder
Tableau sera :
Corrigés. En
push
méthode, vous pouvez appliquer plus de un argument qui sera rempli un tableauOriginalL'auteur abuduba