使用递归打印对象属性的路径

时间:2015-03-11 08:05:54

标签: jquery recursion

我想使用递归在我的对象中打印每个proeprty的路径。

假设我有一个长对象,我只想打印包含值的属性。

我想要的输出:

{ "Level0.Level1.Level2.Level3.key": value }
{ "Level0.Level1.Level2.key": value }

我只想打印具有指定值的那些。我如何修改下面的代码来实现这一目标。

到目前为止我的尝试:

function finalTraverse(data, path) {
    var myList = "<ul>";
    $.each(data, JSONRecurse);

    function JSONRecurse(key, value) {
        myList += "<li>";
        if (value instanceof Object) {
            myList += key + "<ul>";
            $.each(value, JSONRecurse);
            myList += "</ul>";
        } else {
            myList += "<a href='" + value + "'>" + key + "</a>";
            path = "{" + path + "." + key + ":";
            console.log(path);
        }
        myList += "</li>";
    }
    myList += "</ul>";
    $('body').append(myList);
}

0 个答案:

没有答案