我在’Dictionary’上创建了一个扩展来帮助我解析
JSON.下面的方法帮助我这样做:
func toJSONString() -> String? { if let dict = self as? AnyObject { if let data = try? JSONSerialization.data(withJSONObject: dict,options: JSONSerialization.WritingOptions(rawValue: 0)) { if let json = String(data: data,encoding: String.Encoding.utf8) { return json } } } return nil }
问题出现在这一行:
if let dict = self as? AnyObject {
我收到一条警告,说“检查选项时使用的’AnyObject’类型的非可选表达式”
我该如何解决这个问题?
解决方法
只需从代码中删除导致警告的行,并按原样传递自己的JSONSerialization函数.这应该没有任何问题:
extension Dictionary { func toJSONString() -> String? { if let data = try? JSONSerialization.data(withJSONObject: self,encoding: String.Encoding.utf8) { return json } } return nil } }