0

我正在尝试使用不使用数字作为键但使用字符串的 json 数据集

这使得返回结果有点复杂。

所以如果json结构是这样的

{
    "total": 1,
    "data": {
        "tab": {
            "what-you-doing": {
                "tabColWidth": "2",
                "tabColHeight": "2",
                "category": "CategoryA",

            },
            "tab-smaller-78e": {
                "tabColWidth": "1",
                "tabColHeight": "1",
                "category": "CategoryB",

            }
        }
    }
}

然后我想查询这个

我的 js 到 getJson

function getJSON (name, path) {


var promise =   $.ajax({
        url: path + name + '.json',
        method: 'get',
        dataType: 'json'
});

return promise;
}

然后使用数据集

$(document).ready(function(){

    var promise = getJSON('feed', "../data/");

    $.when(promise).then(function(result) {

        $(result.data.tab).each(function(index, element) {

        console.log(element);

        console.log(element['what-you-doing'].category);

        });
    });

显然我不想在代码中指定你在做什么,所以我怎样才能在这个循环中得到这个名字,并查看它下面的结果。

在 json 中不使用 [] 的原因是为了更容易找到这个结果,而不必做另一个循环。
});

4

1 回答 1

2

您是否在问如何在 javascript 中遍历对象中的键?因为 JSON 被转换为 javascript 对象......你可能只需要

for (var key in element) {
    console.log(key);
    console.log(element[key]);
}
于 2013-10-15T07:01:24.390 回答