关于typescript的使用等等

76 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第3天。 在这里记下一些对typescript的学习与理解。

JS动态类型, 弱类型语言。 typescript 静态类型, 弱类型语言。

静态类型的优点: 1.可读性增强。 2. 可维护性增强 3. 多人合作提高稳定性,获得更好的稳定性和开发效率。

JS的超集: 包含兼容所有的JS的特性,支持共存, 支持渐进性引入和升级。

typescript的习惯: 在类名之前加上一个大写的I,用于表示这是一个类名。

编码风格 :类的风格:

interface IbyteDancer{
/*readonly 代表该变量是可读的*/
    readonly jobId: number;
    name : string;
    sex: 'man' |'woman' | 'other';
    age: number;
    hobby?: string;
    [key: string]: any;
}

变量定义的风格,兼容JS的 类型 变量名 的方式,但是有自己的方式 变量名:类型

泛型约束: 类型string

高级类型: 联合类型:表示一个值可以是几种类型之一。 交叉类型:多种类型叠加在一起成为一种类型,它包含了所需要的所有类型的特性。

欸,好难的高级数据类型。 关键字【extend】跟随泛型出现,表示类型判断,可以类比三元表达式。 关键字【infer】出现在类型推荐中,表示定义类型变量,可以用于指代类型。

typescript工程应用---web/node

摘抄: 把 TypeScript 当成 JavaScript 的一个特性。你就是不想用这个特性,你就不用好了。 绝大部分的 TypeScript 教程都是披着 TypeScript 的皮的 JavaScript 初级教程 + TypeScript 类型基础。入门都是 JavaScript,只不过,标注不标注类型。TypeScript 类型基础到深入用 TypeScript 的类型有一个非常大的鸿沟:范型。 又因为 JS/TS 经历非常长一段非标准化的发展历程,有很多“民间”库的地位和标准库甚至都差不多。比如大名鼎鼎的 lodash(大半被 JS 内置了),day.js(已经有提案在进行了)。