新的Swift更新后出现“模糊使用下标”错误
我的项目之前运行良好,如果使用模拟器仍然运行良好。 但是,当我连接一个iPhone,并尝试运行该项目时,我得到这个错误:“模糊使用下标”时,检索此行上的JSON信息:
let channels = jsonResult["channels"]?[0] as? [String: AnyObject]
任何帮助,以补救这个赞赏!
编译器似乎是更多的types限制。
jsonResult["channels"]
的结果types是AnyObject
您必须通过检查作为数组的值来帮助编译器。
if let channels = jsonResult["channels"] as? [AnyObject], channel = channels[0] as? [String: AnyObject] { // do something with channel }
或者更安全地检查数组是否不为空
if let channels = jsonResult["channels"] as? [[String:AnyObject]] where !channels.isEmpty { let channel = channels[0] // now the compiler knows it's [String:AnyObject] // do something with channel }