【问题标题】:Waht is () => //sample code in js or C# [duplicate]什么是 () => //js 或 C# 中的示例代码 [重复]
【发布时间】:2018-01-13 17:55:50
【问题描述】:

()=> //codes叫什么名字

它有什么作用?或者它的目的是什么。 c#中的示例

 List<Task> Tasks = new List<Task>();
 var taskCustomer = Task.Factory.StartNew(() =>
 {
   using (NorthContext dbContext=new NorthContext())
   {
       model.CustomerList = dbContext.Customers.Where(
       cus=>cus.ContactName.Contains(search)).ToList();
   }
});
Tasks.Add(taskCustomer);

js中的示例

window.addEventListener('resize', () => this.onResize()); 

this.onResize();

【问题讨论】:

  • 只是一个匿名函数,也叫lambda

标签: javascript c# typescript task multitasking


【解决方案1】:

javascript/Typescript 中,它叫 arrow function

FROM DOCS

箭头函数表达式的语法比函数短 表达式并且没有自己的 this、arguments、super 或 新目标。这些函数表达式最适合非方法 函数,它们不能用作构造函数。

C#

它被称为 lambda expression

lambda 表达式是一个匿名函数,您可以使用它 创建委托或表达式树类型。通过使用 lambda 表达式,您可以编写可以传递为的局部函数 参数或作为函数调用的值返回。拉姆达 表达式对于编写 LINQ 查询特别有帮助 表达式。

【讨论】:

    【解决方案2】:

    这个() =&gt; {//...}C# 中被称为lambda 表达式。这是一种定义方法并将其作为参数传递给另一个方法的简单方法。在这种 specific 情况下,您定义的方法没有参数,并且执行您在花括号内指定的任何操作。更正式的说法是here

    lambda 表达式是一个匿名函数,您可以使用它 创建委托或表达式树类型。通过使用 lambda 表达式,您可以编写可以传递为的局部函数 参数或作为函数调用的值返回。拉姆达 表达式对于编写 LINQ 查询特别有帮助 表达式。

    另一方面,在 JavaScript 中,这称为 箭头函数,正如 here 所述:

    箭头函数表达式的语法比函数短 表达式并且没有自己的 this、arguments、super 或 新目标。这些函数表达式最适合非方法 函数,它们不能用作构造函数。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-15
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 2023-03-19
    相关资源
    最近更新 更多