Typescript速成

简介:

javascript 的超集,Typescript扩展了javascript,并添加了类型。

可以在任何支持JavaScript的平台中执行。

TS不能被JS解析器直接执行,需要安装TS编译器

TS开发环境搭建

1.安装node.js

2.使用npm全局安装typescript    

npm i -g typescript

3.创建一个TS文件

4. 使用tsc对TS文件进行编译:(编译成JS)

tsc hello.ts  //hello.ts 是文件名

TS语法   

//类型注解
let str : string  = "abc"    
//类型断言 
as a number
//基础类型和联合类型、
let v1 :string = "abc"
let v2 : number = 10 
let v3 : boolean = true
let nu : null = null 
let un : undefined = undefined
let v4 : string | null = null
let v5: 1 | 2 | 3 = 2  
//数组类型
let arr : number[] = [1,2,3] 
let arr1 : Array<string> = ['a','b','c']
//元组
let t1: [number,string,number] = [1,'a',2]
let t2: [number,string,number?] = [1,'a']   //第三个值可选
//枚举值
enum MyEnum {
    A,
    B,
    C
}
console.log(MyEnum.A)
console.log(MyEnum[0])
//void类型 只有一个值undefined 通常用来给函数返回值
//函数类型
function MyFun(a:number, b:string):number {  //可以设置返回值类型number
    return 100
}
//
type Myusername = string | number
let a:Myusername = 10

//
function MyFun(a:number, b?:string):number {   //b的值可选,一般可选值在右侧
    return 100
}
//
function MyFun(a = 10, b:string):number {//a 的值可选,默认值是10。(特殊情况a在前面)
    return 100
}

//
function MyFun(a = 10, b: string, c?: boolean, ...rest: number[]): number { //rest剩余值是一个数组结构
    return 100
}
const f = MyFun(20, "nihao", true, 1, 2, 3, 4)

//接口
 interface Obj {
    name:string,
    age:number
 }

 const obj:Obj = { //类型是Obj,遵守Obj的类型规则
    name:"lihua",
    age:18
 }


//别名 type
type Myusername = string | number
let a:Myusername = 10

//泛型
function myFun<T>(a:T,b:T):T[]{
    return [a,b]
}
myFun<number>(1,2)
myFun<string>("nihao","Ts")
myFun(true,false)
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值