typescript 是 JavaScript 语言的超集,(就是 JavaScript 的语言的拓展,添加了一些功能)
typescript 简称:ts (语法跟 Java 特别像)
全局安装:
npm i -g typescript
ts 语言的特性:ts 写 js 没问题,写 ts 也没页面,反正最后都会编译成 js 文件
ts 文件名的后缀 .ts
范围修饰符
public 类内 子类 类外
protected 受保护的 类内 子类
private 私有的 类内
tsc指令编译:tsc 文件名
创建 ts 文件 hello.ts
使用 tsc 指令编译:tsc hello.ts // 但是麻烦
这样的话,我们就可以在同目录下,会生成一个同名的 js 文件
当然,我们也可以在编辑器上,进行实时编译,大多数编辑器都提供了这样的方法,详情百度
ts 语法:
1. 数据类型
在 js 中数据类型决定变量 = 右边的值
使用 let / var 声明变量,在声明变量的同时指定变量的 类型
语法:let 变量:数据类型 = 赋值
2. 布尔类型
let a:boolean = true / false
3. 数字类型
let a:number = 45
4. 字符串
let a:string = "hello"
5. 数组:定义数组的两种方式
第一种写法:在数据类型后面加 [] ,代表数组中里面的元素都是该类型
let arr:number[] = [12,24]
第二种写法:使用数组泛型 Array<数据类型>
let as:Array<string> = ["hello","world"]
6. 元组
当数组中的元素是有限个,我们使用元祖类型
let ad:[string,number,boolean] = ["hello",45,false];
每个元素的数据类型可以不相同
7. 枚举类型
可列举的元素,并且用一些对应的编号,一一对应,一般用在存储星期几,性别,颜色等等
enum color{red,blue,green} // 关键字 enum 默认 red 为 0 ,blue 为 1 ,green 为 2
enum color{red,blue=5,green} // 如果定义了 值,那么 red 为 0 ,blue 为 5, green 为 6 自增的形式
8. any 任意类型 (后面跟任何数据类型)
let a:any = "hello" / true / 45 都可以
9. void 空类型(没有类型)
往往用在函数的返回值
10. null 和 undefined 类型
11. never 类型 用在抛出错误
12. object 类型 非原型类型 ts 里面没有对象类型
13. 函数类型:
function add(x:number,y:number):number{ ():number 这里的 number 代表函数返回值 的数据类型,必须是数字
console.log(x+y);
return x+y;
}
add(12,45) //这里就必须填数字了
let add = function(x:number,y:number):number{
console.log(x+y);
return x+y;
}
add(12,96) // 这里必须填数字
变量后面一定要跟数据类型