ts学习
一、ts简介
1.1. typeSctipt是javaScript的超集,支持es6标准,ts由微软开发的自由和开源的编程语言,ts设计目标是开发大型应用,t可以编译成纯js,编译出来的js可以在任何浏览览器上。
1.2 语言特性:ts是一种给js添加特性的语言扩展,增加的功能包括:
- 类型批注和编译时类型检查
- 类型推断
- 类型擦除
- 接口
- 枚举
- Mixin
- 泛型编程
- 名字空间
- 元组
- Await
- 类
- 模块
- lanbda函数的箭头语法
- 可选参数以及默认参数
1.3js和ts的区别
ts是js的超集,扩展js的语法,因此现有的js代码可以与ts一起工作无需任何修改,ts通过类型注解提过编译时的静态类型检查。ts可以处理任何已有的js代码,并只对其中ts代码进行编译
二、ts基本语法
1.1ts程序由以下几个不组成
- 模块
- 函数
- 变量
- 语句和表达式
- 注释
ts代码可以通过tsc命令编译,例如:tsc runoob.ts,最后听过node命令来执行js代码 node runoob.js
1.2ts保留关键字
break | as | catch | switch |
case | if | throw | else |
var | number | string | get |
module | type | instanceof | typeof |
public | ptivate | enum | export |
finally | for | while | void |
null | super | this | new |
in | return | true | false |
any | extends | static | let |
package | implements | interface | function |
do | try | yield | const |
continue |
1.3空白和换行符
ts会忽略程序中出行的空格 ,制表符和换行符。空格,制表符通常用来缩进代码,是代码容易理解。ts区分大小写字母,每行指令都是一段语句,你可以使用分号或者不使用,分号在ts中是可选的,建议使用。如果语句写在同一行则一定要使用分号分割,否则会报错,ts注释和js注释是一致的
1.4ts与面向对象
面向对象是一种对现实世界雷姐和抽象的方法,ts是一种面向对象的编程语言,面向对象主要概念:对象和类。
对象:对象是一个类的实例,有状态和行为。类:类是一个模板,t描述一类对象的行为和状态。方法:方法是雷电操作的实现步骤
三、ts的基本数据类型
1.1
数据类型 | 关键字 | 描述 |
任意类型 | any | 声明any的变量可以赋予任意类型的值 |
数字类型 | number | 双精度64位浮点值。t可以用来表示整数和分数。 |
字符串类型 | string |
一个字符串类型,使用单引号或者双引号表示字符串类型。反引号来定义多行文本和嵌套表达式 let name: string = "Runoob";
let years: number = 5;
let words: string = `您好,今年是 ${ name } 发布 ${ years + 1} 周年`;
|
布尔值 | boolean |
表示逻辑值:true和fale |
数组类型 | 无 |
生命变量为数组 //在元素类型后面加上【】 let arr:number[]=[1,2]; //或者使用数组泛型 let arr:Array<bumber>=[1,2] |
元组 | 无 |
元组类型用来表示异质元素数量和类型的数组,各元素的类型不必相同,对应位置的类型需要相同 let x:[string,number]; x=['runoob',1]//输出正常 x=[1,'sfsd']//输出runoob |
枚举 | enum |
枚举类型用于定义数值集合 enum coloor{red,green,blue} |
void | void | 用于标识方法返回值的类型,表示该方法没有返回值 |
null | null | 表示对象值缺失 |
undefined | undefinded | 用于初始化变量为一个未定义的 |
never | never | never是其他类型(包括null,和undefined)的子类型,代表从不会出现的值 |
注意:ts和js没有整数类型
1.2ts变量声明
变量是一种使用方便的占位符,用于引用计算机内存地址。我们可以把变量看做储存数的容器。
-
变量名称可以包含数字和字母。
-
除了下划线 _ 和美元 $ 符号外,不能包含其他特殊字符,包括空格。
-
变量名不能以数字开头。
变量使用前必须先声明,我们可以使用 var 来声明变量。
我们可以使用以下四种方式来声明变量:
声明变量的类型及初始值:
var [变量名]:[类型]=值;var uname:string='runoob'