SwiftyJSON - 可以检查对象类型吗?

时间:2016-02-28 09:05:33

标签: ios swifty-json

例如我有一个json

var json = JSON(data: data!)

在里面我引用了对象

var list = json["OBJECT"]

有没有办法可以检查它是对象,数组还是字符串并返回bool?

This没有帮助。 var list始终为JSON的类型。我想找到一种方法来检查里面是什么。

2 个答案:

答案 0 :(得分:13)

SwiftyJSON中的JSON对象具有type属性,其类型为enum

public enum Type: Int {
    case number
    case string
    case bool
    case array
    case dictionary
    case null
    case unknown
}

例如

var list = json["OBJECT"]
switch list.type {
  case .array: print("list is Array")
  case .dictionary: print("list is Dictionary")
  default: break
}

答案 1 :(得分:0)

看看这个例子:

//let json = ["OBJECT":"stringvalue"]

let testArray = [1,2,3]
let json = ["OBJECT":testArray]

if let element = json["OBJECT"] {
    if element is String {
        print("yes")
    }
    switch element {
    case is String:
        print("is string")
    case is Array<Int>:
        print("is array of int")
    default:
        print("is something else")
    }
}