首先 让我们来认识下TS与JS的区别罢 (typescript是一门静态类型的弱类型语言,而javascript是一门动态类型的弱类型语言)
TS是JS的一个超集
1、TypeScript有"类"
2、TypeScript有"模块"
3、js没有重载概念,ts有可以重载
4、ts对比js基础类型上,增加了 void/元组等等
我们先来安装下TS的环境
众所周知 TS是微软的东西 VSCode也是微软的产品 所以 VSCode自然支持TS
我们安装VSC
这里在Win环境下示范
只要一直下一步即可
打开后 右键正在编辑的文件 打开终端 这时候我们就可以在屏幕的右侧下半部分使用 **tsc** 命令来执行 TypeScript 文件代码
我们在上文提到了弱类和强类
会发生隐式类型转换的语言就是弱类型语言,比如在javascript里当字符串和数字相加时会把数字强制转换为字符串进行拼接,上文提过 js是动态弱类 所以 强类是不可以这样做的
那么 TS 与 JS TS的优点何在?
1.更稳定
2.可以运行JS 是JS的超集 共存
3.渐进引入
左为JS 右为TS()
其实差别不大
这里展示下函数方面
声明
function sum(x: number, y: number): number {
return x + y;
}
表达式
let mySum: (x: number, y: number) => number = function (x: number, y: number): number {
return x + y;
};
选参
function buildName(firstName: string, lastName?: string) {
if (lastName) {
return firstName + ' ' + lastName;
} else {
return firstName;
}
}
let tomcat = buildName('Tom', 'Cat');
let tom = buildName('Tom');
余参
function push(array: any[], ...items: any[]) {
items.forEach(function(item) {
array.push(item);
});
}
let a = [];
push(a, 1, 2, 3);
函数重载
function add(x, y) {
return x + y;
}
add(1, 2); // 3
add("1", "2"); //"12"
科普 元组和数组 JS无元组 元组是啥? 数组又是啥? 元组可以理解为一个长度,每一项元素类型都确定的数组 而数组 可以存储任意类型数据(TS JS皆可)