1.Node卸载
1)控制面板卸载
2)安装位置删除文件夹
3)c盘用户 下去删除.npmrc文件
2.下载Nodejs
最新下载地址: http://nodejs.cn/download/
安装:
双击打开,下一步,同意协议,选择安装路径(建议不要放在C盘),一直下一步,到最后勾选就可以了
查询版本:
# node 版本
node -v
#npm 版本
npm -v
配置
设置淘宝镜像
npm config set registry " https://registry.npm.taobao.org
3.安装TypeScript
npm install -g typescript
npm 包管理器
install 安装(简写i)
typescript ts依赖
-g 全局安装(电脑的任意位置都可以使用)
# 查询ts版本
tsc -v
编译tsc
tsc index.ts
自动编译
# 初始化package.json 文件
npm init -y
# 局部安装 ts-node-dev typescript 依赖
npm install ts-node-dev typescript
# 在package.json 中的scripts中添加脚本
"start": "ts-node-dev --respawn --transpile-only ./src"
# 在终端中就可以使用npm start 启动项目
npm start
解析package.json文件
{
"name": "ts", // 项目名称
"version": "1.0.0", // 项目的版本
"description": "", // 项目的描述
"main": "index.js", // 项目的入口文件
"scripts": { // 脚本
"start": "ts-node-dev --respawn --transpile-only ./src"
},
"keywords": [], // 关键词
"author": "", // 作者
"license": "ISC", // 协议
"dependencies": { // 依赖的版本
"ts-node-dev": "^2.0.0",
"typescript": "^4.7.3"
}
}
TypeScript 基础类型
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u6nWJcSP-1655366124436)(C:\Users\高宇凡\Desktop\1.png)]
1)number
let binaryLiteral:number = 0b1010; //二进制
let octalLiteral:number = 0o744; //八进制
let decLiteral:number = 6; //十进制
let hexLiteral:number =0xf00d;//十六进制
let a:number = 10;
//类型推断
let b = 100;
b ='' //报错,只能是number类型,不能赋其他类型的值
2)Boolean
let isDone:boolean = false;
isDone:true;
let flag = true;
3)String
let color: string = 'red';
color = 'yellow';
let fullName: string = 'Bod body';
let age:number =23;
let sentence:string = 'Hello,my name is $(fullName)';
4)字面量
{
//{}表示代码块
//字面量限制取值范围
let color :'red'|'green'|'blue';
color = 'red';
color = 'green';
color = 'blue';
let num:1|2|3;
num = 2;
}
5)any
//any 任意类型
let a:any = 'hi';
a = true;
a = 123;
6)unknown
// unknown 不知道
{
let a:unknown = 'hi';
a = false;
a = 723;
}
7)array
{
let arr: string[] =['a', 'b', 'c', 'd', 'e'];
console.log(arr);
//Array<number> 泛型
let arr2:Array<number> =[1,2,3,4,5];
console.log(arr2);
}
8)tuple 元组
// tuple 元组
{
//限制每一个元素的类型,只能有2个元素
let a: [string, number];
a = ['hello',20];
}
9)enum 枚举
// enum 枚举:声明类型,限制范围
enum COLOR {
RED = 'red',
BLUE = 'blue',
YELLOW = 'yellow',
}
let a :COLOR = COLOR.RED;
let b :COLOR = COLOR.BLUE;
let c :COLOR = COLOR.YELLOW;
10)联合类型
{
let a : string|number|string[]|number[] = [1,4];
a = ['a', 'b', 'c', 'd', 'e'];
a = 1,2,3,4,5,6,7,8;
a = 'hello','hi';
}
11)类型断言
{
//类型转换
let a : unknown = 'hello world';
// let length =a.length //报错:unknown没有length,只要string有
let length1 =(a as string).length //给a转类型,用as装
let length2 =(<string>a).length //用泛型转变
console.log(length1,length2);
}
TypeScript 函数
1)函数的声明
{
function x(){
console.log('a');
}
const b = () => console.log('b');
}
2)函数的返回值
{
function foo ():number{
return 10;
}
function bar ():string{
return 'bar';
}
//void 没有返回值
function y():void{}
console.log(foo(),bar());
}
3)函数的参数
{
//普通参数
function a (x:boolean,y:boolean):void{}
//可选参数 ?代表可选 但可选不能放在第一个,必须放在必选参数之后
function b (x:number,y?:number){}
//默认参数
function c (x:number,y:number = 1000){}
//剩余参数
function d (x:number,y:number ,...args:number[]){
console.log(x,y,args);
}
a(true,false);
b(100);
b(7,23);
c(100);
c(100,100);
d(10,20,1,2,3,4);
}