浩明-空间 浩明-空间
首页
  • Unity

    • 类比法学c#
  • 学习笔记

    • 《JavaScript高级程序设计》
    • 《TypeScript 从零实现 axios》
    • TypeScript
    • JS设计模式总结
  • typescript杂谈

    • 为什么要用ts
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • vim学习
  • webgl基础
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 悟道
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

储浩明

热爱编程的小明
首页
  • Unity

    • 类比法学c#
  • 学习笔记

    • 《JavaScript高级程序设计》
    • 《TypeScript 从零实现 axios》
    • TypeScript
    • JS设计模式总结
  • typescript杂谈

    • 为什么要用ts
  • HTML
  • CSS
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • vim学习
  • webgl基础
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 悟道
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • JavaScript文章

  • Unity

    • C#类比学习
    • ts-c#的泛型
    • c#命名空间与es6模块
    • lambda表达式
      • TypeScript 中的 Lambda 表达式
      • C# 中的 Lambda 表达式
        • 相似之处
        • 不同之处
        • 总的来说
    • c#和ts的异步编程
    • C#与ts的数组操作方法
    • c#与ts事件
    • c#和ts的继承
    • c#与ts接口
    • c#与ts类对象
  • 学习笔记

  • typescript杂谈

  • 前端
  • Unity
chuhaoming
2024-08-06
目录

lambda表达式

# TypeScript 中的 Lambda 表达式

  1. 在 TypeScript 中,Lambda 表达式通常用于定义匿名函数。语法如下: (param1, param2, ...) => { /函数体/ }
// 不带参数的 Lambda 表达式
let greet = () => console.log("Hello!");

// 带一个参数的 Lambda 表达式
let square = x => x * x;

// 带多个参数的 Lambda 表达式
let add = (x, y) => x + y;

1
2
3
4
5
6
7
8
9
  1. TypeScript 中的 Lambda 表达式常常与数组方法(如 map、filter 等)一起使用,以提供更加简洁的函数式编程体验。
let numbers = [1, 2, 3, 4, 5];
let squares = numbers.map(x => x * x); // [1, 4, 9, 16, 25]

1
2
3

# C# 中的 Lambda 表达式

  1. 在 C# 中,Lambda 表达式的语法稍有不同,但思想是相同的。语法如下: (param1, param2, ...) => { /函数体/ }
// 不带参数的 Lambda 表达式
Func<string> greet = () => "Hello!";

// 带一个参数的 Lambda 表达式
Func<int, int> square = x => x * x;

// 带多个参数的 Lambda 表达式
Func<int, int, int> add = (x, y) => x + y;
1
2
3
4
5
6
7
8

注意,在 C# 中,我们需要为 Lambda 表达式指定类型,例如 Func<int, int>,它表示一个接受一个 int 参数并返回一个 int 的函数委托

与 TypeScript 类似,C# 中的 Lambda 表达式也常与 LINQ 查询表达式一起使用,提供了一种函数式编程的方式。

int[] numbers = { 1, 2, 3, 4, 5 };
var squares = numbers.Select(x => x * x); // [1, 4, 9, 16, 25]
1
2

# 相似之处

两种语言中的 Lambda 表达式都是为了定义匿名函数,提供更简洁的语法。 它们都支持带参数和不带参数的 Lambda 表达式。 都常与函数式编程风格的方法(如 TypeScript 的数组方法和 C# 的 LINQ)一起使用。

# 不同之处

C# 需要为 Lambda 表达式指定类型,而 TypeScript 则由编译器自动推断类型。 TypeScript 中的 Lambda 表达式语法更加简洁,不需要指定类型。 TypeScript 中的 Lambda 表达式更多应用于函数式编程,而 C# 则更加侧重于 LINQ 查询表达式。

# 总的来说

尽管语法有一些区别,但 C# 和 TypeScript 中的 Lambda 表达式概念是相似的,都旨在提供更简洁、更函数式的编程体验。作为一名Web 开发人员,您应该能够很容易地掌握 C# 中的 Lambda 表达式语法和用法。

编辑 (opens new window)
#C#
上次更新: 2024/08/09, 10:55:31
c#命名空间与es6模块
c#和ts的异步编程

← c#命名空间与es6模块 c#和ts的异步编程→

最近更新
01
c#与ts类对象
08-06
02
c#与ts接口
08-06
03
c#和ts的继承
08-06
更多文章>
Theme by Vdoing | Copyright © 2019-2024 Haoming chu | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式