Obtenir la première propriété JSON
Est-il un moyen d'obtenir le nom de la première propriété d'un objet JSON?
J'aimerais faire quelque chose comme ceci:
var firstProp = jsonObj[0];
edit: je suis un objet JSON qui détiennent les catégories des tableaux avec des url de l'image.
comme suit:
{
"category1":["image/url/1.jpg","image/url/2.jpg"],
"category2":["image/url/3.jpg","image/url/4.jpg"]
}
Je suis une itération à travers l'objet à insérer les images, et tout ce que je voulais, c'était un moyen élégant pour voir la catégorie à laquelle a été inséré en premier. Au début, j'ai juste fait
for (var cat in images) {
if (i==0) firstCat = cat;
...
}
Mais que certains comment "senti" moche...Donc, essentiellement, c'était juste une question d'élégance :p
source d'informationauteur peirix
Vous devez vous connecter pour publier un commentaire.
L'ordre des propriétés d'un objet ne sont pas garanti être la même que la façon dont vous les mettez dans. Dans la pratique, cependant, tous les principaux navigateurs, faire revenir dans l'ordre. Donc, si vous êtes d'accord avec s'appuyant sur ce...
Également noter qu'il y a un bug dans Chrome relevant de la commande, dans certains cas limites, il n'est pas de l'ordre dans la façon dont ils ont été fournis. Aussi loin que de changer dans l'avenir, les chances sont en fait assez petite, comme je crois que c'est en train de devenir une partie de la norme donc, si quelque chose de support pour cela ne devienne officielle.
Toutes choses considérées, même si, si vous avez vraiment, vraiment, absolument, positivement, vous voulez être sûr que ça va être dans le bon ordre, vous avez besoin d'utiliser un tableau. Sinon, le dessus est bien.
Liés à la question: Éléments de commande - pour ( ... ... ) en boucle en javascript
Il n'y a pas une "première" de la propriété. Les propriétés d'un objet sont non ordonnée.
Vous pouvez obtenir ce que l'un de la JS moteur décide de fournir les premiers avec une boucle.
... mais si l'ordre des questions, utiliser un tableau n'est pas un objet.
Grande question. Je ne sais pas, de toute façon, en plus de l'itération dans un dans la boucle. Vous avez seulement besoin de l'itération à la fois, bien que. Pour plus de sécurité, s'assurer qu'il est connu de la propriété [plus d'infos].
Édité pour être clair que vous êtes une itération sur les noms de propriété, et non pas leurs valeurs.
Lors de l'utilisation de jQuery, vous pouvez également utiliser
$.each
pour effectuer une itération sur un objet JSON. Semble plus propre de l'OMI, de l'aide d'unfor
-boucle