У меня есть функция с ответом JSON. В данный момент я использую метод завершения, но я хочу использовать массив JSON в другом представлении. Как сохранить этот массив как глобальную переменную или посоветовать другой способ использования этого массива во втором представлении. (И если он реальный, я хочу избавиться от этого метода завершения и использовать просто массивный, без повторного вызова функции с завершением, потому что чтобы получить ответ, мне нужно подождать около 5 секунд).
func LTE1800(_ completion: @escaping ([[String]]) -> ()) {
let myURLAdress = "myURL"
let myURL = URL(string: myURLAdress)
let task = URLSession.shared.dataTask(with: myURL!) { (data,
response, error) in
guard let dataResponse = data,
error == nil else {
print(error?.localizedDescription ?? "Response
Error")
return }
do{
let jsonResponse = try
JSONSerialization.jsonObject(with:dataResponse, options: []) as!
[String:Any]
guard let jsonArray = jsonResponse["aaData"] as?
[[String]] else {
return
}
completion(jsonArray)
}
catch let parsingError {
print("Error", parsingError)
}
}
task.resume()
}