Swift - 使用SwiftyJSON从JSON获取字符串数组

时间:2016-10-30 16:21:31

标签: ios arrays swift swifty-json

[
  {
    "content": "Hello!",
    "images": [
      {
        "url": "http://url1.com"
      },
      {
        "url": "http://url2.com"
      },
      {
        "url": "http://url3.com"
      }
    ]
  }
]

如何使用SwiftyJSON获取图像网址数组?

这是我尝试过但没有用的。

for (key, subJson) in json["images"] {
 if let url = subJson["url"].string {
    print(url)
}
}

如果我理解正确,我的"图像" JSON包含一个字典数组,但我的代码是一个字符串数组。我该怎么做才能获得一系列网址字符串?

1 个答案:

答案 0 :(得分:4)

根据您的JSON

if let images = json[0]["images"].array {
  for image in images {
    if let url = image["url"].string {
      print(url)
    }
  }
}

根对象是数组[],包含{}的字典(images)位于根数组的第一个对象中。

您可以使用

获取一系列网址
if let images = json[0]["images"].array {
  let imageArray = images.flatMap{ $0["url"].string }
  print(imageArray)
}