Typescript学习Day2(声明与解构)

1,声明

//在Typescript中,支持var,let和const这样的声明方式
//1, 块级作用域 let var
//例1:
function func(flag:boolean):number{
	let a = 99
	if(flag){
		//let b = a + 1   
		var b = a + 1
		return b
	}
	return b //如果是let声明的那个b就会报错 因为let具有块级作用域 然后这里返回的b 是没有被定义过的
	//如果是var声明就不会报错 因为var没有块级作用域 , 且会被提升
}
func(true)

//例2:
function funcA(x){
	let x = 100  //注意 这里是错误的 因为x在当前作用域已经作为函数传参被定义了 let不可重复定义
}

//例3:
function funcB(flag:boolean,x:number):void{
	if(flag){
		let x = 100  //这里不会报错 因为let的作用域始终在当前花括号下 对于外界是封闭的
  }
}

//2, const
//const声明与let声明相似,它与let拥有相同的作用域规则,单const声明的是常量,常量不能被重新赋值

2,解构

//数组 
let arr:number[] = [1,2]
let [a,b] = arr
console.log(a,b)  //a = 1 , b = 2
//调换位置
[a,b] = [b,a]  //a = 2  , b = 1

//...展开运算符
let [first, ...reset] = [1,2,3,4,5,6]
console.log(first)  //1
console.log(reset)  //[2,3,4,5,6] 

//对象
enum Sex{
	Man,
	Women
}
interface Person{
	personName:string,
	personAge:number,
	personSex:Sex
}
let person:Person = {
	personName:'nineone',
	personAge:22,
	personSex:Sex.Man
}
let {personName,personAge,personSex} = person //nineone,22,0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值