像foo(Func<bool,bool> lambda)
这样的函数可以作为参数传递给方法作为函数:
()=>{int x=8; x=x+2;}
我们可以使用像bar
这样的lambda表达式,它不会带任何东西并返回任何内容。让我说我想将这样的函数作为参数传递给另一个方法function searchLinks(html) {
var $tmp = $('<div />', {
html: html
});
var urlRegex = /\bhttps?:\/\/[a-zA-Z0-9()^=+*@&%#|~?!;:,.-_\/]*[-A-Za-z0-9+&@#\/%=~_()|](?!(\<\/a\>|"|'))/g;
$tmp.contents().each(function () {
if (this.nodeType == Node.TEXT_NODE) {
var string = this.nodeValue;
string = string.replace(urlRegex, function (url) {
if (url.match(/\.gifv/) != null) { //gifv
return gifvToVideo(url);
} else if (url.match(/\.(jpeg|jpg|gif|png|svg)/) != null) { //image
return "<img src='" + url + "' alt='" + url + "'>";
} else if (url.match(/\.(mp4|webm)/) != null) { //video
return '<video><source src="' + url + '"></video>';
} else { //link
return '<a href="' + url + '" target="_blank">' + url + '</a>';
}
});
$(this).replaceWith(string)
}
})
return $tmp.html();
}
然后又怎么做呢?
答案 0 :(得分:8)
这是Fiddle,而不是Action
。如果您不想返回值,则必须使用Action<int> example1 = (int x) => Console.WriteLine("Write {0}", x);
example1.Invoke(1); // or example1(1);
Action example3 = () => Console.WriteLine("Done");
example3.Invoke(); // or example3();
。
例如:
{{1}}
答案 1 :(得分:2)
您需要Action!
但是,据推测,除了设置和操作局部变量之外,它还会做更多的工作吗?