-1
我variavle d
后未分配将返回nil
变量,因为你想<code>print(d)</code>外完成块的网络呼叫
var d: Int!
Alamofire.request(mapsUrl).responseJSON(completionHandler: { (response) in
let jsonObject = JSON(response.result.value)
let value = jsonObject["rows"][0]["elements"][0]["distance"]["value"].int
var converted = 0
if value! <= 5000{
converted = (value!/1000) * 80
}else{
converted = (value!/1000) * 65
}
if converted < 400{
converted = 400
}else if converted == 0{
converted = 400
}
d = converted
})
print(d)
但d
将返回零
请看看在Alamofire README其中明确规定,所有的请求都处理*异步* –