84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
例如
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);
这样?
GO lang ? 异步执行的函数只能通过回调来获得值,因此不能直接通过hello返回bool的方式来获得结果。
这样?
GO lang ? 异步执行的函数只能通过回调来获得值,因此不能直接通过hello返回bool的方式来获得结果。