20774676.png安装命令行——npm i -g typescript

一.基本语法

编译命令行

将TS文件编译为JS:在终端输入命令——tsc hello.js
执行JS代码:在终端输入命令——node hello.js

二.简化运行TS

简化方式:使用ts-node包,直接在node.js中执行TS代码
安装命令:npm i -g ts-node
使用方法:ts-node hello.ts
注意:该安装包作用为内部转换ts为js,再运行js代码

三.TS常用类型

  1. let age: number = 18;

TS可以指定数据的类型,避免了数据类型错误的发生

四.TS的类型注解

  1. let age: number = 18;
  2. let age: numebr = '18';//err:不能将类型“string”赋值给“number”

五.常用基础概述

TS常用类型有两种:JS已有类型和TS新增类型

1.JS已有类型

原始类型:number,string,boolean,null,undefined,symbol
对象类型:object

2.TS新增类型

联合类型,自定义类型,接口,元组,字面量类型,枚举类型,void,any等

六.typescript原始类型

  1. let age: number = 18;
  2. let myName: string = '甘林烽';
  3. let isLoanding: boolean = true/false;
  4. let a: null = null;
  5. let b: undefined = undefine;
  6. let c: symbol =symbol();

七.typescript数组类型

  1. //两种不同的语法,推荐使用第一种方法
  2. let numbers: number[] = [1,3,5];
  3. let strings: Array<string> = ['a','b','c'];

八.联合类型

  1. //数组中既有number又有string类型
  2. let arr: (number | string)[] = [1,'a',3,'b'];

九.类型别名

  1. type customArray = (number | string);
  2. let arr1: customArray=[1,'a',3,'b'];
  3. let arr2: customArray=[3,'x','y',2];

十.函数类型

  1. //普通函数声明
  2. function add(num1: number,number: number): number{
  3. return num1+num2;
  4. }
  5. //指定函数返回型声明
  6. const add = (num1: number,number: number): number => {
  7. return num1+num2;
  8. }
  9. //不推荐的方式
  10. const add: (num1: number, num2: number) => number = (num1,num2) => {
  11. return num1 + number2
  12. }
  13. //没有返回值类型
  14. function greet(name: string): void{
  15. console.log('hello')
  16. }
  17. //可选函数类型(注意:可选参数必须在参数列表的最后,可选参数后面不可以出现必选参数)
  18. //传入不完全的可选参数时,优先分配前面的参数
  19. function greet(name?: stringwhatClass?: number): void{
  20. console.log('我是:'name,'来自',whatClass)
  21. }

十一.对象类型

  1. //如果一行只有一个属性则分号(,)可以去掉
  2. let person: {name: string;age: number;sayHi(content: string): void} ={
  3. name: 'jack',
  4. age: 19,
  5. sayHi('你好'){}
  6. }
  7. //可选属性类型
  8. //如果一行只有一个属性则分号(,)可以去掉
  9. let person: {name?: string;age?: number;sayHi(content: string)?: void} ={
  10. name: 'jack',
  11. age: 19,
  12. sayHi('你好'){}
  13. }