typescript的学习笔记

基本类型变量

let isDone: boolean = true;
let x: number = 10;
const myName: string = 'li';

let val: any = 10;
val = true;

let val1: Object = 10;
val = true;
// Object类型类似any,可以随意传值,但不能随意调用

let obj1: object = {};
let u: undefined = undefined;
let n: null = null;

联合类型

let x: number | null = null;

数组

let list: any[] = [1, true, 3];
let list2: Array<number> = [1, 2, 3];
let list3: ReadonlyArray<string> = ['1', '2'];

元组 tuple

let tuple1: [string, number] = ['age', 20];

tuple1[0].length;
tuple1[1].toFixed(2);

类型断言(相当于类型转换)

let a: any = 10;
let b: number = (a as string).length;

枚举

枚举类型提供一个便利是可以由枚举的值得到它的名字

enum Color {
	red = 10,
	green = 100
}
let val1: string = Color[10];
let val2: Color = Color.red;

函数

函数参数

给函数参数添加类型注解

function test(name: string) { }

默认值

function test(name: string, age: number = 23) {

}

函数返回值

function test(): void {
	// void类型,与any类型相反,它表示没有任何类型, 通常作用于函数返回值,
}

function test1(): never {
	throw new Error();
	// 返回never类型必须存在无法到达的终点
}

接口

interface Person {
	name: string;
	age: number;
	tel?: string;
	readonly id: string;
	[propName: string]: any;
}

const person: Person = {
	name: 'li',
	age: 23,
	tel: '180',
	id: '1',
	gender: 'male',
}
function print(person: Person): Person {
	return person;
}

构造器中public参数为类的属性

class Student {
  constructor(public name: string, public age: number) {
    
  }
  print() {
    console.log(this.name);
  }
}

发布了20 篇原创文章 · 获赞 0 · 访问量 310

猜你喜欢

转载自blog.csdn.net/qq_40278455/article/details/104274573