类型 Any 没有下标成员 Swift 3.0

Posted

技术标签:

【中文标题】类型 Any 没有下标成员 Swift 3.0【英文标题】:Type Any has no subscript members Swift 3.0 【发布时间】:2016-09-22 14:21:38 【问题描述】:

尝试转换函数以使其与 Swift 3.0 兼容。必须将参数jsonAnyObject 更改为Any

fileprivate func checkForAuthorizationFailure(_ json: Any) -> Bool 

        let responseMessage = json["response"]! as? String
        if responseMessage == "Unauthorized. Invalid token or email." 
            return true
        

        return false
    

但是在这一行:let responseMessage = json["response"]! as? String 我现在收到错误:“Type Any 没有下标成员”。我在这里做错了什么?

【问题讨论】:

比较***.com/questions/39549107/… 【参考方案1】:

在使用下标之前,您必须将 Any 转换为 AnyObject。

fileprivate func checkForAuthorizationFailure(_ json: Any) -> Bool 

    let responseMessage = (json as AnyObject)["response"]! as? String
    if responseMessage == "Unauthorized. Invalid token or email." 
        return true
    

    return false

【讨论】:

以上是关于类型 Any 没有下标成员 Swift 3.0的主要内容,如果未能解决你的问题,请参考以下文章

类型'Any'没有下标成员Swift 3

Swift 3 - 类型'Any'没有下标成员

类型“Any”没有下标成员/Swift 3 [重复]

Swift:将 oldArray[][] 复制到 newArray[][] 会导致错误(类型 'Any' 没有下标成员)

swift 3 Type 'Any' 没有下标成员? [复制]

错误:键入 [AnyHashable: Any]?没有下标成员 (Swift)