我在Swift中访问JSON数组:
genres: [
{
id: 6,
title: "Comedy"
}
],
我正在使用代码:
if let genreInfo = jsonResult["genres"]?[0] as? [String: AnyObject]{
let genre = genreInfo["title"] as? String
genreArray.append(genre)
}
如果存在类型但是如果类型JSON数据是[]则有效,我得到一个数组越界错误。有没有办法重构它所以它不会导致错误?
答案 0 :(得分:3)
问题是你假设,如果数组存在,那么它至少有一个值。这会导致你的问题。
试试这个
if let genreInfo = jsonResult["genres"]?.first as? [String: AnyObject] {
let genre = genreInfo["title"] as? String
genreArray.append(genre)
}