用钥匙拿物体,保持钥匙

时间:2020-03-07 17:26:26

标签: javascript json key

例如,我正在使用json[username]过滤如下所示的数据。

数据如下:

{"albert":{"userCData":[{"id":"slz1","checked":"false"},{"id":"slz2",...................]}}
{"sally":{"userCData":[{"id":"slz1","checked":"false"},{"id":"slz2",...................]}}
{"petey":{"userCData":[{"id":"slz1","checked":"false"},{"id":"slz2",...................]}}
{"gilbert":{"userCData":[{"id":"slz1","checked":"false"},{"id":"slz2",...................]}}

因此,例如json[sally]引入了sally数据,但省略了她的名字(密钥),为我提供了以下信息:

{"userCData":[{"id":"slz1","checked":"false"},{"id":"slz2",...................]}

我还需要带上/保持姓名键。 即整行:

{"sally":{"userCData":[{"id":"slz1","checked":"false"},{"id":"slz2",...................]}}

如果我对其进行硬编码:user = "{" + username + ":"+json[username]+"}";,则该对象停止工作:控制台仅{sally:[object Object]}。无论如何要实现这一目标?

2 个答案:

答案 0 :(得分:1)

您可以遍历json并以此方式进行尝试,

for(let item in json){
    let data = {};
    data[item] = json[item];
    console.log(data);
}

答案 1 :(得分:-1)

您可以像这样简单地遍历数据:

2020-03-07 18:33:55.720

在这里,key将存储sally的名称,而存储在sally中的数据是通过data [key]提取的。

您也可以参考这篇文章:How to loop through key/value object in Javascript?