swift - 如何将嵌入式 json 分配给 Swift 中的变量?

标签 swift swift3 swifty-json

我的后端代码返回以下 json:

...
 "_id": "some_id",
 "opening_hours": {
    "mon": "9-5",
    "tue": "9-5",
    "wed": "9-5",
    "thu": "9-5",
    "fri": "9-5",
    "sat": "10-3",
    "sun": "closed"
}
...

我想将 opening_hours 分配给我的 Swift 应用程序中的一个变量,这样我就可以从那里轻松访问不同的日期。我正在使用 SwiftyJSON

我试着用下面的代码来做到这一点:

var openingHours:[String:String] = [:]
    if(json["opening_hours"] != nil){
        openingHours = json["opening_hours"].dictionary
    }

但是我有一个错误:

Cannot assign value of type '[String : JSON]?' to type '[String : String]'

我怎样才能使它易于访问?

最佳答案

您要找的是dictionaryObject属性,它将返回 [String:Any]? 对象,因此将其类型转换为 [String:String] 将适用于您。

var openingHours:[String:String] = [:]
if(json["opening_hours"] != nil){
    openingHours = json["opening_hours"].dictionaryObject as? [String:String] ?? [:]
}

关于swift - 如何将嵌入式 json 分配给 Swift 中的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43620448/

相关文章:

swift - 无法调用非函数类型的值 'HTTPURLResponse?' - Alamofire 4.0

ios - Swift - 从一年中的某一天获取日期

swift - 从 json 数组快速加载到对象数组中

ios - 如何将 swiftyJSON dictionaryValue 用作 UILabel 的可用字符串?

json - 从 JSON 获取 NSDate?

swift - 快速将自定义 header 添加到 Collection View

ios - 下载 PDF,保存到文档目录并加载到 UIWebView

ios - 在 Swift 中使用更新函数的更清洁(更好)替代方法

ios - 无法从处理程序访问类中存在的变量

iOS - 使用 AVAudioSessionCategoryAmbient 和 duckOthers 和 mixWithOthers 开启静音