swiftyJSON 检查值是否为空

swiftyJSON check if value is null

我有一个 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

但这总是正确的。 我该如何处理?

执行下面的代码看看

let jsonArray = [{ "id": "4635465675", "name": "Arts", "pluralName": "Arts", "shortName": null }] 

if let jsonObject = jsonArray[0] as? [String : Any] {

    if let id = jsonObject["id"] as? String {
       print("id - \(id)")
    } else {
       print("id does not exist or it is null/nil")
    }

    if let name = jsonObject["name"] as? String {
       print("name - \(name)")
    } else {
       print("name does not exist or it is null/nil")
    }

    if let pluralName = jsonObject["pluralName"] as? String {
       print("pluralName - \(pluralName)")
    } else {
       print("pluralName does not exist or it is null/nil")
    }

    if let shortName = jsonObject["shortName"] as? String {
       print("shortName - \(shortName)")
    } else {
       print("shortName does not exist or it is null/nil - \(jsonObject["shortName"])")
    }


}

在此分享此代码的结果。

好的,这比我想象的要容易

if json[0]["shortName"].string == nil {
//null
}else{
//not null
}

可以直接查看JSON.null

的key
if json[0]["shortName"] == JSON.null {
// show the alert

}

如果它是你的字符串

if json[0]["shortName"].string == nil {