TypeScript学习记录(基本语法)

98 阅读1分钟

TypeScript在线练习地址

基础类型

Boolean类型

let hasNextPage:boolean = false;

Number类型

let count:number = 1;

String类型

let userName:string = "lusy";

Symbol类型

const name = Symbol();
let obj ={
   [name]:"lucky"
};

Array类型

let arr:number[] = [1,2,3];
//或者使用泛型也可以
let arr:Array<number> = [1,2,3];

Enum 枚举类型

//数字枚举
enum Count{
 ZERO,
 ONE,
 TWO,
 THREE
}

/**如果没有给枚举指定值的话,默认从0开始,类似数组的下标。
* 字符串枚举
**/

enum StringEnum{
 ZERO = 'a',
 ONE = 'b',
 TWO = 'c',
 THREE = 'd'
}

Any类型

//在TypeScript中,任何类型都可以赋值给any类型
let someData:any = 777;

Unknown类型

value = true; // OK
value = 42; // OK
value = "Hello World"; // OK
value = []; // OK
value = {}; // OK
value = Math.random; // OK
value = null; // OK
value = undefined; // OK
value = new TypeError(); // OK
value = Symbol("type"); // OK 

//Unknown类型只能赋值给any,或者Unknown类型本身。

Tuple元祖类型

let tupleType=[string,boolean];
tupleType=["lili",true];

void

void一用作表示一个函数没有任何返回值

function noReturn():void{
 console.log("there is no any to return");
}

## Null 和 Undefined

在 TypeScript 中,可以使用 null 和 undefined 来定义这两个原始数据类型:

let u: undefined = undefined;
let n: null = null;

类型断言

<>尖括号语法

let someString:any = "this is some string";
let stringLength = (<string>someString).length;

as语法

let someString:any = "this is some string";
let stringLength = (someString as string).length;

非空断言

有时候我们如果确定一个变量或者一个函数的返回不为空,但是ts类型校验提示类型为非空的话,我们可以使用非空断言 “!”忽律警告

//变量的非空断言
function getName(name:string|undefined|null){
 let myName:string = name!;
}
//函数的非空断言
type GetFirstName = ()=>string;
function getFullName(firstName:GetFirstName|undefined){
  const fullName:string = firstName!()
}