初识typescript

2023-05-09  本文已影响0人  不落05

Typed JavaScript at Any Scale.
添加了类型系统的 JavaScript,适用于任何规模的项目。

类型是typescript的核心,JavaScript的变量是灵活的,初始化时可以是字符串类型,稍后可以赋值为数字,另一方面从类型系统按照「类型检查的时机」来分类,可以分为动态类型和静态类型。这就造成了JavaScript有些错误只能在执行时才会报错,(另JavaScript有两个状态,一是预编译阶段,此时对于var,function可以做变量提升,function是一等公民,二是执行阶段。)TypeScript是静态类型,在运行前需要先编译为 JavaScript,而在编译阶段就会进行类型检查。

let foo = 1;
foo.split(' ');

// JavaScript
// Uncaught TypeError: foo.split is not a function
// 运行时会报错(foo.split 不是一个函数),造成线上 bug

// TypeScript
// Property 'split' does not exist on type 'number'.
// 编译时会报错(数字没有 split 方法),无法通过编译

类型系统按照「是否允许隐式类型转换」来分类,可以分为强类型和弱类型。
TypeScript和JavaScript 一样是弱类型,它们都可以在运行时进行隐式的类型转换。

安装TypeScript

全局环境下安装 TypeScript :

npm install -g typescript

编译一个 TypeScript 文件很简单:

tsc hello.ts
上一篇 下一篇

猜你喜欢

热点阅读