gpt4 book ai didi

arrays - JSON解析全局变量Swift 4

转载 作者:行者123 更新时间:2023-11-30 11:34:25 26 4
gpt4 key购买 nike

我刚刚开始使用 Swift 4 进行编码,需要帮助解析测验应用程序的 JSON。我设法解析 JSON,但包含数组的变量“r”在函数内本地化。我试图将其设为全局变量,但没有成功。我正在使用 swiftyJSON 和 Alamofire,但如果新方法得到正确解释,不介意切换方法。如果可能的话,示例/功能代码会很棒。谢谢您

//struct declaration 
struct Result : Decodable{
let question : String?
let correct_answer : Bool?
}

//var declaration inside class
var myResults = [Result]()


//networking and parsing
func getQuestionNew(){
// this is the main screwed up function
let parameters: Parameters = ["amount": 15, "type":"boolean"]
Alamofire.request("https://opentdb.com/api.php", method: .get, parameters: parameters, encoding: URLEncoding.default, headers: nil).responseJSON { (response) in

print("Request: \(String(describing: response.request))") // original url request
print("Response: \(String(describing: response.response))") // http url response
print("Result: \(response.result)")



if((response.result.value) != nil) {
let swiftyJsonVar = JSON(response.result.value!)
//print(swiftyJsonVar["results"])
let results = swiftyJsonVar["results"].arrayValue

results.forEach({ (item) in
//print("Printing Item \(item["question"].stringValue)")
print("Printing Item \(item)")

var r = Result(question: item["question"].stringValue, correct_answer: item["correct_answer"].stringValue == "True" ? true : false)
print(r)
self.myResults.append(r)

// print(r)

})



}
}
}

最佳答案

使用此代码进行变量 r 声明

var r: Result?

在ViewDidLoad()中初始化这个变量r

self.r = Result()

关于arrays - JSON解析全局变量Swift 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49912032/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com