如何检查结果是__NSCFNumber?

时间:2017-03-25 15:18:56

标签: javascript ios swift int nscfnumber

我正在运行evaluate函数来运行javascript。但是,它在其中运行另一个javascript代码,以便我需要等待一段时间才能获得原始结果。直到原始结果,它返回一个数字。我可以等待结果,但我需要检查返回结果是整数还是字符串。我怎样才能做到这一点?如果我不进行检查,因为第一个结果是int,我在尝试将结果与字符串变量相等时遇到此错误。

  

无法将类型'__NSCFNumber'(0x10f703540)的值转换为   'NSString'(0x10e130c40)。

我的代码是; (writeMSG函数返回数字如果我不等待太多,但如果我等待它将返回一个字符串)

func getLink(){
    while(a != nil)
    {
        evaluate(script: "writeMSG()") {(result,error) in
         print(result!)
                self.a = result as! String
            }
        }
    }
    flag = 1
}

1 个答案:

答案 0 :(得分:0)

我用if(结果是NSString)代码检查它

 func getLink(){
        while(a != nil)
        {
            evaluate(script: "writeMSG()") {(result,error) in
             print(result!)
               if(result is NSString){
                    self.a = result as! String
                 }
                }
            }
        }
        flag = 1
    }