《揭秘Angular 2》-TypeScript声明和解构

TypeScript声明和解构

  • 在TypeScript中,支持varletconst这样的声明方式
  • let声明
let声明与var的声明写法类似。
let声明只在块级作用域生效
let声明在相同作用域之下,不允许被重复声明,只取最近声明的值
  • const声明
const与let用法相似,与let有相同的作用域规则,但const声明的是常量,不能被重新赋值,否则就会出错。
但如果定义的常量是对象,对象的属性值是可以被重新赋值的。
  
  
  • letvar声明变量的写法类似:

    let hello="Hello ";//自动编译为   var hello="Hello"
    
  • let声明的变量只在块级作用域内有效:

    function aa() {
      let a=1;
     function vv() {
        let v=2;
        return v;//正确
      }
      return v;//报错
    }
    
  • let声明在相同作用域之下,不允许被重复声明,只取最近声明的值:

    let p=1;
    let p=2;//报错
  • let声明在下面两种函数入参的对比:

    function funA(x) {
      let x=100;//报错,x已经在函数入参声明
    }
    //增加了判断条件组成的新的块级作用域
    function funB(condition,x) {
        if(condition){
            let x=100;//运行正常
            return x;
        }
        return x;
    }
    funB(false,0);//返回0
    funB(true,0);//返回100
const与let用法相似,与let有相同的作用域规则,但const声明的是常量,不能被重新赋值,否则就会出错
  • const cc=1;
    cc=2;//报错
  • const sun={
      name:"keri"
    }
    sun={
      name:"kerry"//报错
    };
    
    sun.name="keri"//就不会报错
  • 解构
解构是ES6的一个重要特性,所谓的解构就是讲声明的一组变量与相同的数组或者对象的元素值一一对应,并将变量和对应元素进行赋值

数组解构:
let inp=[1,2];
let [a1,a2]=inp;
console.log(a1);//相当于inp[0]:1
console.log(a2);//相当于inp[1]:2
我们还可以使用reset参数语法
(形式为: ...参数名)创建一个剩余变量列表
"..."表示展开操作符,用于创建可变长的参数列表
let[c1...c3]=[1,2,3,4,5];
console.log(c1);//1

console.log(c3);//2,3,4,5     【c3:代表剩余的数】


对象解构:
let test={
    a:1,
    b:2
}
let{a,b}=test;
console.log(a);//1
console.log(b);//2


好了,今天就写到这里啦~~







  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值