Bonjour

Je dois parcourir un tableau du genre ci-dessous et renvoyer chaque valeur.

var liste = {
            '1': '11',
            '2': '21',
            '3': '31', '32'],
            '4': {
                '41': '411', '412'],
                '42' : '421'
                }
    };

Evidemment les contenus sont différents et sont juste donnés à titre indicatif histoire de tester :)

Si quelqu'un a ce genre de fonction en stock je suis preneur

Merci

1 réponse


Govan06
Réponse acceptée

Salut, J'ai trouvé ce snippet sur [url=https://gist.github.com/penguinboy/762197]https://gist.github.com/penguinboy/762197[/url] [code] var flattenObject = function(ob) { var toReturn = {}; for (var i in ob) { if (!ob.hasOwnProperty(i)) continue; if ((typeof ob*) == 'object') { var flatObject = flattenObject(ob*); for (var x in flatObject) { if (!flatObject.hasOwnProperty(x)) continue; toReturn[i + '.' + x] = flatObject[x]; } } else { toReturn* = ob*; } } return toReturn; }; [/code] Ca aplatit tout sur 1 niveau, je sais pas si c'est exactement ce que tu veux. Avec ton exemple ça donne (console.log) : [code] Object 1: "11" 2: "21" 3.0: "31" 3.1: "32" 4.41.0: "411" 4.41.1: "412" 4.42: "421" __proto__: Object [/code]