【发布时间】:2018-08-12 22:38:45
【问题描述】:
我有一个 json,它是字典数组
response.text = [{
"id": "4635465675",
"name": "Arts",
"pluralName": "Arts",
"shortName": null
}]
json = JSON((response.text)?.data(using: .utf8))
我如何检查键“shortName”的值是否为空,例如数组中的第一个字典?
我试着这样做
if json[0]["shortName"] is NSNull
但它总是正确的。 我该如何处理?
【问题讨论】:
-
试试这个
if json["shortName"] is nil。或if let shortName = json["shortName"] { print("shortName - \(shortName)") } else { print("shortName is nil") } -
如果让 _ = json["shortName"] 为? String { // 不为空 }
-
json[0]["shortName"] is NSNull但这总是正确的。我该如何处理它? 当然它会是真的,因为它是空的 -
但是您的 json 是字典,说 [String:String],而不是字典对象数组 [[String:String]],所以我不知道您为什么要尝试使用访问 json 的第一个元素索引[0]
-
@Krunal 完整的 json
[{ "id": "4635465675", "name": "Arts", "pluralName": "Arts", "shortName": null }]和 json 变量var json = JSON((response.text)?.data(using: .utf8))
标签: ios swift swifty-json