欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

TypeScript 入门学习(二):TypeScript 数据类型

程序员文章站 2022-07-12 15:53:25
...

TypeScript 数据类型

TypeScript 中为了使编写的代码更规范,更有利于维护,增加了类型校验,主要给我们提供了以下数据类型。

  • 布尔类型(boolean)
  • 数字类型(number)
  • 字符串类型(string)
  • 数组类型(array)
  • 元组类型(tuple)
  • 枚举类型(enum)
  • 任意类型(any)
  • null 和 undefined
  • void 类型
  • never 类型

字符串类型 string

多行字符串

TypeScript 中可以使用双撇号 “``” 来声明多行字符串。

// 正确
var str1 = `dddd
ddddd
dddd`

// 错误
var str2 = 'sssssss'

字符串模板

TypeScript 中可以在双撇号 “``” 的字符串中用一个表达式 ${} 去插入一个变量或调用一个方法。

var name = 'star';
function getName(): string {  
    return 'star';
}
console.log(`Hello ${name}`);
console.log(`Hello ${getName()}`);

数组类型 array

TypeScript中声明数组的方式有三种:

// 第一种方式
var array1: string[];
array1 = ['123', '456'];

// 第二种方式
var array2: Array<string>;
array2 = ['sss', 'dddd'];

// 第三种方式
var array3: any[];
array3 = ['123', 34, true];

元组类型 tuple

TypeScript 中元组其实是一种特殊的数组,可以声明多种类型的数据。

var tuple: [number,string];
tuple = [123, '455'];  // 数据的类型必须与声明的类型一一对应。

枚举类型 enum

枚举类型一般是都是数字类型枚举,允许我们将数字类型或者其他任何与数字类型兼容的类型赋值给枚举类型的实例。
枚举类型的声明方式:

enum 枚举名 {  
   标识名[=整常数],  
   标识名[=整常数],  
   ...  
   标识名[=整常数]
}
// 声明枚举
enum Color {  Red=1, Blue=2, Green=3}
console.log(Color.Red); // 输出:1
console.log(Color.Green); // 输出:3

enum State {  Success, Error}
console.log(State.Success); // 输出:0
console.log(State.Error); // 输出:1

enum Color {  Red, Blue=4, Green}
console.log(Color.Red); // 输出:0
console.log(Color.Green); // 输出:5

注意: 如果标识名没有赋值,它的值就是下标。

null 和 undefined 类型

null 和 undefined 类型是其他(never类型)数据类型的子类型。

void 类型

TypeScript 中的 void 表示没有任何类型,一般用于定义方法的时候方法没有返回值。

never 类型

never 类型代表从不会出现的类型。
never 类型是 TypeScript 中的底层类型。它自然被分配的一些例子:

  • 一个从来不会有返回值的函数(如:如果函数内含有 while(true) {});
  • 一个总是会抛出错误的函数(如:function foo() { throw new Error(‘Not Implemented’) },foo 的返回类型是 never);