这是我参与「第四届青训营 」笔记创作活动的第2天
这里首先说一下我对于TypeScript的理解,主要是对ES6的支持以及对类型的定义。
TypeScript官网:www.typescriptlang.org 这里有更多关于TypeScript的描述。
为什么我们要使用TypeScript
TypeScipt in Build Time throw exception(TypeScript在编辑阶段就抛出异常),同时TS增加了代码的可读性和可维护性。
TypeScript现在也被应用的非常广泛,React,vue,Antd...
缺点
学习成本:在一开始使用TS的时候肯定会遇到许多的坑,也需要理解许多前端程序员不熟悉的概念。
开发成本:使用TS肯定会增加开发成本,但是对于维护来说,肯定更方便维护。
体验TS
全局安装TS
npm install typescript -g
编译ts文件
关于编辑器:这里推荐 vscode,webstorm,atom.
TS的接口
这里相信很多后端都非常的熟悉。
interface Person{ name: string; age: number; }
let jokereven: Person = { name: 'jokereven'; age: 19; }
类(Class):定义了一件事物的抽象特点,包含它的属性和方法接口可以被类实现(implements)。一个类只能继承自另一个类,但是可以实现多个接口
类的继承
使用 extends
关键字实现继承,子类中使用 super
关键字来调用父类的构造函数和方法。
class Animal {
public name;
constructor(name) {
this.name = name;
}
sayHi() {
return `My name is ${this.name}`;
}
}
class Dog extends Animal{
constructor(name) {
super(name); // 调用父类的 constructor(name)
console.log(this.name);
}
sayHi() {
return super.sayHi(); // 调用父类的 sayHi()
}
}
let d = new Dog('xiao bai'); //
console.log(d.sayHi()); My name is xiao bai
关于TS其实还有很多东西,这里我就不一一说明了,place。