TypeScript(面试时常问)
1.什么是 TypeScript?
2.说说Typescripy和Javascript的区别?
3.说说Typescript的优缺点?
优点:
1:快速简单,易于学习。
2:编译时提供错误检查, 在代码运行前就会进行错误提示。
3:支持所有的JS库。
4:支持ES6,提供了ES6所有优点和更高的生产力。
5:使用继承提供可重用性。
6:有助于代码结构。
7:通过定义模块来定义命名空间。
缺点:
1:需要长时间的来编译代码。
2:在使用第三方库时,需要有三方库的定义文件,并不是所有三方库都提供了定义文件,提供的定义文件是否准确也值得商榷。
4.Typescript有哪些基础类型?(重要)
12个
1:number
2:string
3:boolean
4:Symbol
5:Array
6:Tuple(元组)
7:enum(枚举)
8:object
9:never
表示那些永不存在的值类型。如总是抛出异常或者根本不会有返回值的函数的返回值类型。
10:void
与any相反表示没有任何类型。函数没有返回值时用void。
11:null和undefined
它们是所有类型的子类型。当你指定structNullChecks时,它们只能赋值给void或者它们自己本身。
12:any
5.如何理解Typescript中的类?并说说它有什么特性?
Typescript是一种面向对象的Javascript语言,和其他任何面向对象编程的强语言一样,类是描述某一组对象共有属性状态或行为的实体。它就是构建具体对象实例的模板和蓝图。
特性:
1:继承
2:多态
3:抽象
4:封装
5:实例
6.说说什么Typescript中的泛型?作用是什么?
泛型代表的是泛指某一类型,更像是一个类型变量。由尖括号包裹。
在TypeScript中,泛型是一种创建可复用代码组件的工具。这种组件不只能被一种类型使用,而是能被多种类型复用。类似于参数的作用,泛型是一种用以增强类(classes)、类型(types)和接口(interfaces)能力的非常可靠的手段。这样,我们开发者,就可以轻松地将那些可复用的代码组件,适用于各种输入。然而,不要把TypeScript中的泛型错当成any类型来使用——你会在后面看到这两者的不同。
主要作用是创建逻辑可复用的组件。
泛型可以作用在函数、类、接口上。
泛型的一些好处有:
- 定义输入和输出参数类型之间的关系。比如
function test<T>(input: T[]): T {
//…
}
允许你确保输入和输出使用相同的类型,尽管输入是用的数组。
- 可使用编译时更强大的类型检查。在上诉示例中,编译器让你知道数组方法可用于输入,任何其他方法则不行。
- 你可以去掉不需要的强制类型转换。比如,如果你有一个常量列表:
Array<Item> a = [];