obtenir le nom de la clé à partir d'objet json
C'est presque exactement le même que celui de la question json obtenir la clé noms comme texte?, mais que la réponse n'est pas de travail pour moi.
J'ai un objet json
{"userList":[ {"user1":[{"nom":"mike","memberSince":"01/03/2011"}]}, {"user2":[{"nom":"jean","memberSince":"01/05/2011"}]}, ]}
La seule raison pour laquelle j'ai un "user1" et "user2" étiquettes est parce que je suis le stockage de la userlist par userId en jQuery de données, puis stringifying à le mettre dans un cookie et de l'envoyer dans une autre page. Je sais, semble stupide, mais je suis juste à construire avant la fin de trucs à prouver un point avant de le faire correctement avec un db.
De sorte que le
jQuery('div#userList').de données('user1',user1JSON);
se transforme en
{"user1":[{"nom":"mike","memberSince":"01/03/2011"}]}
lors de l'utilisation de
var userlist=JSON.stringify(jQuery('div#userList').de données());
De ce fait, les infos de l'utilisateur est maintenant l'enfant le nom d'usager, au lieu de n'être qu'un enfant de userlist.
Afin d'obtenir les infos de l'utilisateur, je devrais être capable de dire
pour(u=0;u<userList.longueur;u++){ var userInfo=userList[u][0]; }
mais, malheureusement, c'est juste de me donner une erreur undefined. Si j'utilise
var userInfo = userList[u]['user1'];
Je reçois les infos de l'utilisateur correctement.
Donc, quelqu'un peut-il me corriger pourquoi userList[u][0] ne fonctionne pas, OU
m'expliquer comment utiliser JSON.stringify sans ajouter le nom d'utilisateur pour le début de la chaîne?
Vous devez vous connecter pour publier un commentaire.
C'est parce que la
userList[u]
retourne un objet, pas un tableau.Et vous ne pouvez pas accéder aux propriétés de l'objet avec un indice..
vous pouvez essayer de
Vous pouvez utiliser jQuery chaque fonction de l'itération.
Comment à propos du changement de votre objet comme ceci:
Ensuite, vous pouvez les index dans les userList tableau plus naturellement. C'est probablement plus proche de ce que vos données finira par ressembler à revenir à partir d'une base de données principale de toute façon.
map
. Mise à jour de la question avec un échantillon de ce que ces divs ressembler (c'est à dire où est l'id, le nom d'utilisateur et memberSince, et ce genre d'éléments sont celles situées dans des?)