0

私は JavaScript オブジェクトを持っています:

var testJSON = {
    "Divisions": {
        "modes": [{
            "number": 1,
            "name": "Fruits",
            "Fruits": [{

                "name": "Mango",

                "Mango": [{
                    "number": 1,
                    "name": "Nagpur"
                }]
            }]
        }, {
            "number": 4,
            "name": "Coffee",
            "Coffee": [{

                "name": "Germany",
                "Germany": [{
                    "number": 1,
                    "name": "Germany"
                }]

            }, {

                "name": "Italy",
                "Italy": [{
                    "number": 1,
                    "name": "Italy"
                }]
            },

            ]
        }, {
            "number": 5,
            "name": "Burger",
            "Burger": [{
                "number": 2,
                "name": "McDonalds"
            }, {
                "number": 1,
                "name": "Ham"
            }]
        }]

    }
};

各レベルの「名前」の値を異なる配列に取得したい..

コードを試してみました

function recursion(input)
    {
        var arrayLength=input.Divisions.modes.length;

        for(var i=0;i<arrayLength;i++)
            {
                var elem = input[i];


                if(input[i].name==undefined);   
                {       
                    return;
                }


                recursion(elem);


        }



}

var c=recursion(testJSON);

これはうまくいきません。私が間違っているのは再帰部分だと思います。オブジェクトのレベルは一定ではありません。

4

0 に答える 0