前言
TypeScript 很风行,这是前端从业者家喻户晓的事。
TypeScript 很好用,仁者见仁智者见智。然而,很多大型前端框架都应用 TypeScript 进行了重构。
为了不掉队,我也须要零碎的学习一下 TypeScript 相干常识了,明天是第一课。
TypeScript 的概念及意义
TypeScript 是由微软开发的自在和开源的编程语言。通过在 JavaScript 的 根底上增加动态类型定义构建而成。TypeScript 通过 TypeScript 编译器或 Babel 转译为 JavaScript 代码,可运行在任何浏览器,任何操作系统。
- TypeScript 是增加了类型零碎的 JavaScript,实用于任何规模的我的项目。
- TypeScript 是一门动态类型、弱类型的语言。
- TypeScript 是齐全兼容 JavaScript 的,它不会批改 JavaScript 运行时的个性。
- TypeScript 能够编译为 JavaScript,而后运行在浏览器、Node.js 等任何能运行 JavaScript 的环境中。
- TypeScript 领有很多编译选项,类型查看的严格水平由你决定。
- TypeScript 能够和 JavaScript 共存,这意味着 JavaScript 我的项目可能渐进式的迁徙到 TypeScript。
- TypeScript 加强了编辑器(IDE)的性能,提供了代码补全、接口提醒、跳转到定义、代码重构等能力。
- TypeScript 领有沉闷的社区,大多数罕用的第三方库都提供了类型申明。
- TypeScript 与规范同步倒退,合乎最新的 ECMAScript 规范(stage 3)
TypeScript 能够编译出污浊、简洁的 JavaScript 代码,并且能够运行在任何浏览器上、Node.js 环境中和任何反对 ECMAScript 3(或更高版本)的 JavaScript 引擎中。
TypeScript 有更多的规定和类型限度,代码具备更高的预测性、可控性,易于保护和调试;对模块、命名空间和面向对象的反对,更容易组织代码开发大型简单程序。
TypeScript 的编译步骤能够捕捉运行之前的谬误。
TypeScript 的次要特色
从下面的概念和意义局部能够看出,TypeScript 的特色比拟多,这里咱们就几个次要个性进行剖析。
TypeScript 是动态类型
咱们都晓得,JavaScript 是一门解释型语言,没有编译阶段,它只有在运行时才会进行类型查看。
而 TypeScript 与它相同,因为 TypeScript 在运行前还要通过被编译成 JavaScript 的过程,它在编译阶段就就能确定每个变量的类型,这种语言的类型谬误往往会导致语法错误。
比方,在 JavaScript 中:
let foo = 1;
foo.split(' ');
// Uncaught TypeError: foo.split is not a function
// 运行时会报错(foo.split 不是一个函数),造成线上 bug
而在 TypeScript 中:
let foo = 1;
foo.split(' ');
// Property 'split' does not exist on type 'number'.
// 编译时会报错(数字没有 split 办法),无奈通过编译
TypeScript 是弱类型
在这一点上,TypeScript 和 JavaScript 的体现是统一的,具体是指数据类型能够产生隐式转换,看以下一段代码:
console.log("1" + 1);
// // 打印出字符串 '11'
不论是在 TypeScript 中还是 JavaScript 中,输入后果都是一样的。
全局装置 TypeScript
npm install -g typescript
总结
明天就次要认识一下 TypeScript,晓得它是什么、有什么用,接下来就要学习它该怎么样了。
~
~ 本文完,感激浏览!
~
学习乏味的常识,结识乏味的敌人,塑造乏味的灵魂!
大家好,我是〖编程三昧〗的作者 隐逸王 ,我的公众号是『编程三昧』,欢送关注,心愿大家多多指教!