检查JSONObject Swift中的键

时间:2017-03-17 03:57:07

标签: json swift

我是Swift的新手。如何从JSONObject检查密钥是否存在?在Java中,我可以执行此操作jsonObject.has("selected")。在我的代码下面:

currTable = filteredDataTable[indexPath.row] as! [AnyHashable: Any]

if ((currTable.index(forKey: "selected") != nil) /*currTable["selected"]) != nil*/) {
          currTable.updateValue((!((currTable["selected"] as? Bool)!)), forKey: "selected")
}
else {
          currTable.updateValue(true, forKey: "selected")
}
print(currTable)

在我上面的代码中,当我单击CollectionView Cell时,它总是给我else条件。所以我的JSONObject中的selected键始终为true。我弄错了吗?我看过this,但我的问题并不清楚。

1 个答案:

答案 0 :(得分:0)

试试这个:

currTable = filteredDataTable[indexPath.row] as! [AnyObject: Any]

if let selectedTableElement = currTable["selected"] != nil {
    currTable.updateValue(false, forKey: "selected") 
}
else {
    currTable.updateValue(true, forKey: "selected")
}
print(currTable)