J'ai la structure JSON suivante :
[{ "id":"10", "class": "child-of-9" }, { "id": "11", "classd": "child-of-10" }]
Comment puis-je l'itérer en utilisant JavaScript ?
J'ai la structure JSON suivante :
[{ "id":"10", "class": "child-of-9" }, { "id": "11", "classd": "child-of-10" }]
Comment puis-je l'itérer en utilisant JavaScript ?
var arr = [ {"id":"10", "class": "child-of-9"}, {"id":"11", "class": "child-of-10"}];
for (var i = 0; i < arr.length; i++){
document.write("<br><br>array index: " + i);
var obj = arr[i];
for (var key in obj){
var value = obj[key];
document.write("<br> - " + key + ": " + value);
}
}
note : la méthode for-in est cool pour les objets simples. Elle n'est pas très intelligente à utiliser avec un objet DOM.
N'oubliez pas de vérifier à l'intérieur de votre for key in obj
boucle qui obj.hasOwnProperty(key)
--- sinon un jour vous pourriez trouver d'autres clés qui se fraient un chemin dans obj
que vous ne voulez pas, si quelqu'un étend le prototype par exemple...
Bonjour, je voudrais juste savoir si je veux utiliser ce système pour obtenir un tableau json distant, comment dois-je faire ? S'il vous plaît, donnez-moi quelques conseils !
@AlexanderSupertramp il est défini en utilisant la notation littérale de tableau avec des objets en notation littérale d'objet. En JavaScript, les tableaux sont essentiellement aussi des objets. Je me réfèrerais donc toujours à "arr is set" en utilisant JSON.
Tiré de Documentation sur jQuery :
var arr = [ "one", "two", "three", "four", "five" ];
var obj = { one:1, two:2, three:3, four:4, five:5 };
jQuery.each(arr, function() {
$("#" + this).text("My id is " + this + ".");
return (this != "four"); // will stop running to skip "five"
});
jQuery.each(obj, function(i, val) {
$("#" + i).append(document.createTextNode(" - " + val));
});
Cette syntaxe est très déroutante. Pouvez-vous l'expliquer ? Pouvez-vous également fournir le résultat ?
@WayneHartman Je comprends votre point de vue, mais la question originale dit bien "jquery ou javascript". Il semble que l'erreur était de ne pas avoir de balise jquery sur la question.
Votre jsonObject n'est pas un véritable objet JSON. C'est un objet javascript. C'est pourquoi cela fonctionne. Cependant, si quelqu'un a un objet JSON, il peut le convertir en un objet JS et ensuite utiliser votre méthode. Pour convertir un objet JSON en objet JS, utilisez jsObject = JSON.parse(jsonObject) ;
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
1 votes
stackoverflow.com/questions/1050674/
7 votes
"jquery ou javascript" ? jquery est écrit en javascript !
9 votes
Ce devrait être "jQuery ou pure JavaScript".
2 votes
"Comment itérer sur une structure JSON ?" Vous ne le faites pas. Vous le parsemez, après quoi vous n'avez plus de JSON, et vous boucle dans le tableau résultant .
0 votes
Fait de l'itérateur IIFE github.com/eltomjan/ETEhomeTools/blob/master/HTM_HTA/ il possède des fonctions prédéfinies (de base) DepthFirst & BreadthFirst next et la possibilité de se déplacer dans la structure JSON sans récursion.
0 votes
Je pense que cette question a été réécrite pour ne pas mentionner jQuery, mais selon d'autres commentaires, la question originale mentionnait bien jQuery. Cela prête à confusion car la réponse acceptée utilise jQuery, et ne s'applique donc pas à une situation de type node.js, par exemple.
0 votes
Vote pour la réouverture car bien que les tableaux et les objets soient similaires en javascript, ils ont des différences et c'est l'une d'entre elles. Boucler en toute sécurité sur les propriétés d'un objet est beaucoup plus difficile qu'un tableau en javascript, et la réponse liée à la fermeture ne couvre explicitement que les tableaux, il est peut-être nécessaire de pointer vers une question différente sur la fermeture mais actuellement les liens renvoient à une réponse qui n'est pas correcte pour cette question.