SwiftyJson 遍历几个数组没有循环
Posted
技术标签:
【中文标题】SwiftyJson 遍历几个数组没有循环【英文标题】:SwiftyJson go through several arrays without cycles 【发布时间】:2018-12-30 22:23:04 【问题描述】:如何在没有循环的情况下从一个数组到下一个数组?
JSON:https://i.stack.imgur.com/34BtT.png
我尝试这样做
guard let items = self.json["data"]["reels_media"][]["items"].arrayValue else return
但我没有收到物品。
如果我这样做:
guard let items = self.json["data"]["reels_media"][0]["items"].arrayValue else return
我没有收到数组的所有元素。
【问题讨论】:
["reels_media"][0]["items"]
有什么问题??缺少哪些元素?
例如在数组 10 个元素中,但是当我打印这个常量时,我只收到了 2-3 个元素
reels_media
包含超过 1 项?
请勿发布代码图片。 Images of code are not appropriate on ***。您可以访问明文;请将代码复制并粘贴到您的问题中。
您应该首先用单独的对象表示Media
及其Items
。然后你可以使用递归来解析它们。现在你应该使用Decodable
而不是SwiftyJSON
。
【参考方案1】:
你可以试试
let allItems = self.json["data"]["reels_media"].arrayValue.map($0["items"].arrayValue).joined()
print(allItems)
【讨论】:
非常棒。谢谢你以上是关于SwiftyJson 遍历几个数组没有循环的主要内容,如果未能解决你的问题,请参考以下文章
循环遍历python数组以匹配第二个数组中的多个条件,快速方法?