非常に大きなjsonファイルを読み込み、データを取得しています。私は現在、正しいデータを取り込めますが、配列に追加しようとすると、置き換えられます。私はこれは私が得るものである拡張子の配列を印刷するとき、「SG-ヘッダー見出し」 に一致する複数の値を検索するには、この拡張機能を使用して要素が追加される代わりに置き換えられるのはなぜですか?
func parseJSON(json: JSON){
let predicate = {
(json: JSON) -> Bool in
if let jsonID = json["class"].string where jsonID == "sg-header-heading"{
return true
}
return false
}
var backclass = ViewController()
let foundJSON = json.findmultiple(backclass, predicate: predicate)
。しかし、私がそれを上に印刷すると、私はゼロになります。また、私は最後に6つの値の代わりに1つの値を取得するだけです。
extension JSON{
func findmultiple(viewclass: ViewController, @noescape predicate: JSON -> Bool) -> JSON? {
var backclass = ViewController()
if predicate(self) {
return self
}
else {
if let subJSON = (dictionary?.map { $0.1 } ?? array) {
for json in subJSON {
if let foundJSON = json.findmultiple(backclass, predicate: predicate) {
let shorten = foundJSON["html"].stringValue
let firstshort = shorten.componentsSeparatedByString(" ")
let secondshort = firstshort[1].componentsSeparatedByString("\r")
let classname = secondshort[0]
if(classname == "STUDY HALL (INSTRUCT)"){
print("skip")
}else{
backclass.importClass.append(classname)
print("fsgsfg \(backclass.importClass)")
//backclass.collection.reloadData()
}
}
}
}
}
return nil
}
}
あなたが再帰的であるとき、バッククラスは多くの時間を初期化しますか? –
はい、実際そうです。 – johnson