如何循环遍历 JSON 数组?

Posted

技术标签:

【中文标题】如何循环遍历 JSON 数组?【英文标题】:How do I loop through a JSON array? 【发布时间】:2021-04-26 17:07:23 【问题描述】:

我有一个 Discord.js 机器人,我想做一个 lockdown 命令,但我的频道 ID 存储在一个 JSON 文件中,我不知道如何遍历它。这是 JSON 配置:


    "channels": 
        "main": 
            "id": "691548147922763825"
        ,
        "creations": 
            "id": "700390086390448148"
        ,
        "fanart": 
            "id": "691551615873843211"
        ,
        "memes": 
            "id": "691549417173680148"
        
    

我如何循环遍历它?我知道只对 JSON 文件执行 forEach 是行不通的,所以我需要一些帮助。

【问题讨论】:

channels 不是数组。 【参考方案1】:

您可以在对象上使用 for..in 循环来获取键并对其进行迭代。对象不实现 Iterable 接口,所以for...of 不起作用。而forEach 不是对象上的方法,而是数组上的方法。

const json = 
    "channels": 
        "main": 
            "id": "691548147922763825"
        ,
        "creations": 
            "id": "700390086390448148"
        ,
        "fanart": 
            "id": "691551615873843211"
        ,
        "memes": 
            "id": "691549417173680148"
        
    


for( let key in json.channels ) 
  console.log( key, json.channels[key] )

【讨论】:

以上是关于如何循环遍历 JSON 数组?的主要内容,如果未能解决你的问题,请参考以下文章

Json格式循环遍历,Json数组循环遍历

如何使用 PHP 循环遍历 JSON 数组

python中如何遍历json数组

循环遍历 JSON 数组

php:循环遍历json数组

如何循环遍历包含对象和数组的 JSON 对象