最近玩csdn比较少,欢迎关注我的掘金:杨灿就是杨火山
简单快速上手ts的学习路径:
一、熟悉掌握熟悉的强类型定义,初步学习编写强类型代码。
- 学习ts的声明变量类型,能够初步编写强类型代码;
- 学习ts的接口,进一步强定义对象的丰富属性;
- 学习ts的函数声明和实现定义,强类型化你的js函数;
二、灵活面对类型转换,类型报错,类型文件的声明和引入,灵活编写强类型代码。
- 学习ts的类型断言(解释型类型转换);
- 学习ts的泛型,更灵活的面对多可能性类型参数;
- 学习ts的类型声明文件,全局定义;
ts在线运行练习网站:https://www.tslang.cn/play/index.html
一、ts简介
1.什么是TypeScript(TS)?
TypeScript简称TS
TS和JS之间的关系其实就是Less/Sass和CSS之间的关系
就像Less/Sass是对CSS进行扩展一样, TS也是对JS进行扩展
就像Less/Sass最终会转换成CSS一样, 我们编写好的TS代码最终也会换成JS
2.为什么需要TypeScript?
因为JavaScript是弱类型, 很多错误只有在运行时才会被发现
而TypeScript是强类型, 它提供了一套静态检测机制,如何我们编码事中途变换变量的类型,ts就会在报错,帮助我们在编码时发现错误。
Ts为帮助js弥补在大型项目中的缺陷而生。
3.TypeScript特点
- 支持最新的JavaScript新特特性
- 支持代码静态检查
- 支持诸如C,C++,Java,Go等后端语言中的特性
(枚举、泛型、类型转换、命名空间、声明文件、类、接口等)
二、ts中的类型声明
TypeScript支持与JavaScript几乎相同的数据类型,此外还提供了实用的枚举类型、元祖方便我们使用
1.boolean、number、string简单类型的变量声明
布尔类型 boolean
let val2:boolean;
val2 = true;
// val2 = 1; // 会报错
console.log(val2);
数值类型 number
let val1:number; // 定义了一个名称叫做val1的变量, 这个变量中将来只能存储数值类型的数据
val1 = 123;
// val1 = "123"; // 会报错
// 注意点: 其它的用法和JS一样
// val1 = 0x11;
// val1 = 0o11;
// val1 = 0b11;
console.log(val1);
字符串类型 string
let val3:string;
val3 = "123";
val3 = `val1=${
val1}, val2==${
val2}`;
console.log(val3);
2.数组和元祖类型的变量声明
(1)整个数组数据类型一致的情况
方式一: Array < number >
// 需求: 要求定义一个数组, 这个数组中将来只能存储数值类型的数据
let arr1:Array<number>; // 表示定义了一个名称叫做arr1的数组, 这个数组中将来只能够存储数值类型的数据
arr1 = [1, 3