携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第11天,点击查看活动详情
📚 ts简介
TypeScript是JavaScript的超集,扩展了JavaScript的语法,和js是包含的关系。比js增加了一些静态类型和基于类的面向对象的编程。ts是强类型语言,强制定义各种数据的类型,可读性强。使得我们在编写的过程中就能发现错误。适合构建大型应用。ts的学习将从模块,函数,变量,语句等方面来介绍ts。这也是一种学习积累和总结的过程。
💻 安装 typescript
npm install -g typescript
用 tsc 命令,查看版本号
$ tsc -v
Version 3.2.2
执行以下命令将 TypeScript 转换为 JavaScript 代码
tsc app.ts
转换后的app.js 文件,代码如下:
var str = "Hello World";
console.log(str);
⏰ TypeScript 基础语法
🌱 基本类型
TypeScript 包含的数据类型如下表:
| 数据类型 | 关键字 | 描述 |
|---|---|---|
| 任意类型 | any | any类型的变量可以赋值任意类型 |
| 数字类型 | number | number类型可以用来表示整数和分数。 |
| 字符类型 | string | 定义字符型可以使用单引号/双引号/反引号。 |
| 布尔类型 | boolean | 逻辑true/ false。 |
| 数组类型 | 无 | 数组类型。 |
| 元组 | 无 | 元组类型的每个元素类型不必一致,需要按位置设置对应的类型 |
| 枚举 | enum | 枚举类型用于定义数值集合。 |
| void | void | 用于标识方法返回值的类型,表示该方法没有返回值。 |
| null | null | 表示对象值缺失。 |
| undefined | undefined | 用于初始化变量为一个未定义的值 |
| never | never | never 是其它类型(包括 null 和 undefined)的子类型,代表从不会出现的值。 |
Any 类型
用于定义该变量的值会动态改变,不确定的时候。
let str: any = 66; // 数字
str = 'hello World'; // 字符串
number
let num: number = 66;
string
let str: string = "sara";
boolean
let bol: boolean = true;
数组
let arr: number[] = [1, 2, 3];
元祖
let x: [number, string, boolean] = [66, 'sara', true];
enum
enum Gender {girl, boy, other};
let str: Gender = Gender.girl;
console.log(str); // 输出0
void
function hello(): void {
console.log("Hello world");
}
null
在js中null代表 "什么都没有"。
null是一个只有一个值的特殊类型。表示一个空对象引用。
用typeof检测null返回是 object。
undefined
在js中, undefined 代表初始没有设置值的变量。
用typeof检测一个没有值的变量会返回undefined。
Null 和 Undefined 是其他任何类型(包括 void)的子类型,可以赋值给其它类型。