TS入门(二)

数据类型

(1)布尔值(boolean )
1
let isDone: boolean = false;

在 TypeScript 中,boolean 是 JavaScript 中的基本类型,而 Boolean 是 JavaScript 中的构造函数
数值(number )

(2)模板字符串:
1
let sentence: string = `Hello, my name is ${myName}. I'll be ${myAge + 1} years old next month.`

编译结果:

1
var sentence = "Hello, my name is " + myName + ".\nI'll be " + (myAge + 1) + " years old next month.";

其中 ` 用来定义 ES6 中的模板字符串,${expr} 用来在模板字符串中嵌入表达式。

(3)空值(Void ):

JavaScript 没有空值(Void)的概念,在 TypeScript 中,可以用 void 表示没有任何返回值的函数:
声明一个 void 类型的变量没有什么用,因为你只能将它赋值为 undefined 和 null:

1
let unusable: void = undefined;
  • Null 和 Undefined:

    undefined 类型的变量只能被赋值为 undefined,null 类型的变量只能被赋值为 null。

(4)任意值(Any)
  • 来表示允许赋值为任意类型

    任意类型的理解:(如果是一个普通类型,在赋值过程中改变类型是不被允许的,但如果是 any 类型,则允许被赋值为任意类型。声明一个变量为任意值之后,对它的任何操作,返回的内容的类型都是任意值。—-变量如果在声明的时候,未指定其类型,那么它会被识别为任意值类型)

类型推论(如果定义的时候没有赋值,不管之后有没有赋值,都会被推断成 any 类型而完全不被类型检查:)
(5)联合类型

表示取值可以为多种类型中的一种。

1
2
3
let myFavoriteNumber: string | number;
myFavoriteNumber = 'seven';
myFavoriteNumber = 7

联合类型使用 | 分隔每个类型。
(6)对象的类型——接口
  • 接口

    在面向对象语言中,接口(Interfaces)是一个很重要的概念,它是对行为的抽象,而具体如何行动需要由类(classes)去实现(implements)。

    (7)函数的类型
    声明语句
    1
    2
    3
    function sum(x: number, y: number): number {
    return x + y;
    }
    使用 declare 关键字来定义它的类型,帮助 TypeScript 判断我们传入的参数类型对不对:
    1
    declare var jQuery: (selector: string) => any;

    (declare 定义的类型只会用于编译时的检查,编译结果中会被删除。)

上例的编译结果是:

1
jQuery('#foo');

Posted on

2019-05-31

Updated on

2019-12-23

Licensed under

Kommentare

:D 一言句子获取中...

Loading...Wait a Minute!