TypeScript数据类型(二)

浅浅的花香味﹌ 2023-07-23 03:59 35阅读 0赞

TypeScript增加了类型检测,较JavaScript有以下几点优势:1、在编译时就能发现潜在错误问题并提示,而非在运行时,增加了更好的错误处理;2、在编写时代码提示更友好,提示类型对应的属性和方法;3、代码语义更清晰,类型就是最好的注释。

基础类型:number、string、boolean、null、undefined、void、symbol

  1. // 当声明和赋值在两行时,需要使用类型注解,明确变量类型
  2. let count: number;
  3. count = 123;
  4. // 当声明和赋值在一行时,无需使用类型注解,TypeScript自动进行类型推断,分析变量类型
  5. const num = 123;

对象类型:{}、class、function、[]

  1. // 对象类型
  2. interface Teacher {
  3. name: string;
  4. age: number;
  5. }
  6. const teacher: Teacher = { name: 'Brady', age: 18 };
  7. // 函数类型:两种写法
  8. const func = (str: string) => {
  9. return parseInt(str, 10);
  10. };
  11. // 类类型:
  12. class Person { }
  13. const brady: Person = new Person();
  14. const func1: (str: string) => number = str => {
  15. return parseInt(str, 10);
  16. };
  17. // 数组类型
  18. const numberArr: number[] = [1, 2, 3];
  19. const arr: (number | string)[] = [1, '2', 3];
  20. // 类型别名
  21. type User = { name: string, age: number };
  22. const userArr: User[] = [
  23. { name: 'Brady', age: 18 }
  24. ]
  25. // 元组类型:数组中类型固定、长度固定
  26. const tupleArr: [string, string, number] = ['Brady', 'male', 18];
  27. // csv格式类型注解
  28. const teacherList: [string, string, number][] = [
  29. ['Brady', 'male', 18],
  30. ['Lucy', 'female', 16],
  31. ['Jack', 'male', 20]
  32. ];

其他类型:Date、复合类型、never

  1. const date = new Date(); // Date类型
  2. interface Person {
  3. name: string;
  4. }
  5. const rawData = '{"name": "Brady"}';
  6. const newData: Person = JSON.parse(rawData);
  7. let temp: number | string = 123;
  8. temp = '456';
  9. const error = (): never => {
  10. throw new Error();
  11. console.log('123');
  12. };

发表评论

表情:
评论列表 (有 0 条评论,35人围观)

还没有评论,来说两句吧...

相关阅读

    相关 TypeScript数据类型(一)

    > TypeScript是强类型语言,这就意味着声明变量时,必须指定类型。这是与Javascript不同的地方。指定类型,既可以增强代码的健壮性(执行编译、语法检查)又可以提升