11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

j'ai ce JSON

[
    {
        "id": "1",
        "category_id": "1",
        "chanel_ref": "A67017-Y07535-30000",
        "dim_cm": "17 x 21 x 5 CM",
        "dim_in": "6.5 x 8.5 x 2 in",
        "product_order": "1",
        "by_size": "0",
        "display_name": "SACS",
        "lang": "fr",
        "slug": "sacs",
        "price": "1390€",
        "market": "EU",
        "product_name": "POCHETTE",
        "long_description": "Pochette du soir inspirée du sac iconique 2.55 en agneau",
        "declinaison_default": "Y07535-30000",
        "declinaison": {
            "colors": {
                "color": [
                    {
                        "color_ref": "30000",
                        "color_label": "Gris clair"
                    },
                    {
                        "color_ref": "43813",
                        "color_label": "Lilas"
                    }
                ]
            }
        }
    },
    {
        "id": "2",
        "category_id": "1",
        "chanel_ref": "A67018-Y07535-43813",
        "dim_cm": "8,5 x 14 x 5 CM",
        "dim_in": "3.5 x 5.5 x 2 in",
        "product_order": "2",
        "by_size": "0",
        "display_name": "SACS",
        "lang": "fr",
        "slug": "sacs",
        "price": "1 890 €",
        "market": "EU",
        "product_name": "SAC CLASSIQUE",
        "long_description": "Petit sac classique à rabat en python ciré",
		"declinaison_default": "Y07535-43813",
        "declinaison": {
            "colors": {
                "color": [
                    {
                        "color_ref": "43813",
                        "color_label": "Lilas"
                    },
					{
                        "color_ref": "30000",
                        "color_label": "Gris clair"
                    }
                ]
            }
        }
    }


j'ai mis le contenu dans un objet data.
en fait mon soucis c'est que je ne sais pas sélectionner un élément de tel id, là je les sélectionne dans l'ordre comme ceci :
 data[id].display_name

si je met 3 ça me prendra le 4ème élément.
Mais je voudrais juste sélectionner l'élément data.display_name dans l'objet data ayant pour id 3.
vous savez comment faire ? ça doit être un truc tout bête
Modifié par gorn (13 Feb 2012 - 16:25)
Je sais pas si c'est le moyen le plus rapide, mais on peut toujours y aller à coup de boucle...

function dataById(data, id) {
    for (var j = 0; j < data.length; j++)
        if (data[j].id == id)
            return data[j];
    return null;
}

Modifié par Gothor (13 Feb 2012 - 16:30)
Gothor a écrit :
Je sais pas si c'est le moyen le plus rapide, mais on peut toujours y aller à coup de boucle...

function dataById(data, id) {
    for (var j = 0; j &lt; data.length; j++)
        if (data[j].id == id)
            return data[j];
    return null;
}


je pense que ça marche, je vais essayer ainsi, mais ce n'est peut être pas très performant vu que ça fait une boucle et donc des tests à chaque fois.
Après mon fichier ne contient qu'environ 20 éléments donc peut être que ça n'est pas gênant.
En tout cas merci de ta réponse.