作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我如何解析 json:
let myObject = MyObject()
let string1 = if jsonObject["string1"] as? String{
myObject.string1 = string1
}else{
throw InValidJson
}
let string2 = if jsonObject["string2"] as? String{
myObject.string2 = string2
}else{
throw InValidJson
}
let string3 = if jsonObject["string3"] as? String{
myObject.string3 = string3
}else{
throw InValidJson
}
但是代码太多了,就像我在任何地方都使用的那样,是否可以执行以下操作:
do{
myObject.string1 = if jsonObject["string1"] as! String
myObject.string2 = if jsonObject["string2"] as! String
myObject.string3 = if jsonObject["string3"] as! String
}catch(){
error.description
}
所以我不需要检查每个键,因为我的 json 太大了。
谢谢
最佳答案
你可以这样做:
guard let string1 = jsonObject["string1"] as? String,
string2 = jsonObject["string2"] as? String,
string3 = jsonObject["string3"] as? String else {
//handle error
return
}
关于ios - 如何在不对每个键使用 if 的情况下解析 json 时捕获错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35479012/
我是一名优秀的程序员,十分优秀!