简介
TypeScript是 JavaScript 的一个超集,主要提供了类型系统和对 ES6 的支持,TypeScript 设计目标是开发大型应用,它可以编译成纯 JavaScript,编译出来的 JavaScript 可以运行在任何浏览器上。
TypeScript 是给 JavaScript 添加特性的语言扩展。增加的功能包括:
- 类型批注和编译时类型检查
- 类型推断
- 类型擦除
- 接口
- 枚举
- Mixin
- 泛型编程
- 名字空间
- 元组
- Await
安装
通过npm来安装
npm install -g typescript
执行tsc -v出现版本号说明安装成功了:
.ts 作为 TypeScript 代码文件的扩展名,tsc app.ts可以将ts代码编译成js。
TypeScript 基础类型
包括:任意类型(any),数字类型(number),字符串类型(string),布尔类型(boolean),数组类型,元组,枚举(enum),void,null,never
-
任意类型(any):针对编程时类型不明确的变量使用的一种数据类型
-
never 类型:never 是其它类型(包括 null 和 undefined)的子类型,代表从不会出现的值。这意味着声明为 never 类型的变量只能被 never 类型所赋值,在函数中它通常表现为抛出异常或无法执行到终止点(例如无限循环)
-
枚举(enum):枚举类型用于定义数值集合。
enum Color {Red, Green, Blue}; let c: Color = Color.Blue; console.log(c); // 输出 2 -
元组:元组类型用来表示已知元素数量和类型的数组,各元素的类型不必相同,对应位置的类型需要相同。
let x: [string, number]; x = ['Runoob', 1]; // 运行正常 x = [1, 'Runoob']; // 报错 console.log(x[0]); // 输出 Runoob
TypeScript 变量声明
TypeScript 变量的命名规则:
- 变量名称可以包含数字和字母。
- 除了下划线 _ 和美元 $ 符号外,不能包含其他特殊字符,包括空格。
- 变量名不能以数字开头。
变量声明格式:var [变量名] : [类型] = 值;
TypeScript 联合类型
联合类型(Union Types)可以通过管道(|)将变量设置多种类型,赋值时可以根据设置的类型来赋值。
语法格式:Type1|Type2|Type3
var val:string|number
val = 12
console.log("数字为 "+ val)
val = "Runoob"
console.log("字符串为 " + val)