例如
func hello() -> Bool { var result = false httpRequestWithCompletionHandler({ is404 in result = is404 }) return result }
这个函数的返回值永远是 false,因为 closure 是异步执行的 怎么在调用这个函数的时候,得到真正的返回值呢? 注: result 必须定义在函数体内,不能定义在函数体外
小伙看你根骨奇佳,潜力无限,来学PHP伐。
var result_cb = function (result) { alert(result) }; function hello(cb) { httpRequestWithCompletionHandler(is404) { cb(is404); } } hello(result_cb);
Comme ça ?
GO lang ? Les fonctions exécutées de manière asynchrone ne peuvent obtenir des valeurs que via des rappels, les résultats ne peuvent donc pas être obtenus directement en renvoyant bool depuis hello.
Comme ça ?
GO lang ? Les fonctions exécutées de manière asynchrone ne peuvent obtenir des valeurs que via des rappels, les résultats ne peuvent donc pas être obtenus directement en renvoyant bool depuis hello.