我想将对象追加到对象数组。将对象追加到变量
var products: [Product] = []
init() {
Alamofire.request(.GET, Urls.menu).responseJSON { request in
if let json = request.result.value {
let data = JSON(json)
for (_, subJson): (String, JSON) in data {
let product = Product(id: subJson["id"].int!, name: subJson["name"].string!, description: subJson["description"].string!, price: subJson["price"].doubleValue)
print(product)
self.products.append(product)
}
}
}
self.products.append(Product(id: 1, name: "test", description: "description", price: 1.0))
print(self.products)
}
我通过我的JSON响应做一个循环,并创建Product对象,但是当我尝试添加到产品的变量,它不追加。
这里是输出:
[Checkfood.Product]
Checkfood.Product
Checkfood.Product
Checkfood.Product
Checkfood.Product
Checkfood.Product
第一线代表print(self.products)
,剩下的就是print(product)
谢谢
您正在快速打印'self.products'。该行在异步请求完成之前很长时间执行。 – rmaddy
@rmaddy我有另一个函数,它只返回这个数组中的项的总数,当我不追加自己时它总是返回0。 –