2
这段代码是用来回答这方面的问题:迅速完成处理程序语法
How to make an HTTP request in Swift?
let url = NSURL(string: "http://www.stackoverflow.com")
let task = NSURLSession.sharedSession().dataTaskWithURL(url) {(data, response, error) in
println(NSString(data: data, encoding: NSUTF8StringEncoding))
}
task.resume()
为dataTaskWithURL
文档说以下内容:
func dataTaskWithURL(_ url: NSURL,
completionHandler completionHandler: ((NSData!,
NSURLResponse!,
NSError!) -> Void)?) -> NSURLSessionDataTask
所以它出现在{(data .... }
部分第一个代码块是完成处理程序。我来自一个Java背景的地方,这将表示,像这样:
dataTaskWithUrl(url, function(data, ....) { .... });
有人能解释为什么完成处理程序是不是在方法调用中的第二个参数?
啊,这正是我一直在寻找一个闭合的表达。谢谢! – thatidiotguy 2014-09-30 18:33:00