Objective-C中的Block

来源:互联网 发布:淘宝买家信誉升级 编辑:程序博客网 时间:2024/05/22 08:02

Block在Mac OS X 10.6(包括Mac OS X 10.6)和iOS 4.0(包括iOS 4.0)后被引入。

ASIHTTPRequest with block

- (IBAction)grabURLInBackground:(id)sender  {     NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"];     __block ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];     [request setCompletionBlock:^{        // Use when fetching text data        NSString *responseString = [request responseString];           // Use when fetching binary data        NSData *responseData = [request responseData];     }];     [request setFailedBlock:^{        NSError *error = [request error];     }];     [request startAsynchronous];  }  
有点类似JavaScript中的匿名函数。

jQuery - AJAX get()

$("button").click(function(){  $.get("demo_test.asp",function(data,status){    alert("Data: " + data + "\nStatus: " + status);  });});

下面是一些参考资料

  1. 雪豹:构建编程友好型环境
  2. Anonymous function
  3. C/C++语言中闭包的探究及比较