zoukankan      html  css  js  c++  java
  • TypeScript 素描-变量声明

    博文读自 TypeScript 官方文档而来,不具有学习性,仅是本人学习时记录以供日后翻阅 ,有学习TypeScript的朋友还请去看更为详细的官方文档

    /*
    变量声明在之前的js中一直是使用var关键字,现在支持了全新的声明
    方式 let 与 const
    var 声明的变量作用域一直很让人费解,所以现在推荐使用let来消除
    var 声明变量带来的一系列问题
    */
    
    // 第一个例子  
    function f(flag: boolean) {
        if (flag) {
            var xxxx: number = 10;
        }
        xxxx = 12;
    }
    //在方法中 if 里声明了变量xxxx,但是在if外忍耐可以访问xxxx,如
    //果声明方式换成 let 则变量的作用域只存在 if方法内
    
    //第二个例子
    function fun3() {
        for (var i = 0; i < 10; i++) {
            for (var i = 0; i < 10; i++) {
            }
        }
    }
    //也许上面的例子并不会出错,也不会带来什么麻烦,但是第二个例子
    //很明显就是属于会出错的类型了。两次for循环都声明了变量i,然后
    //它们在后面的循环中就用了同一个变量
    
    //所以说了这么多废话,就是说let多NB,大家快来用吧-.- 不过实话
    //使用let可以消除这些问题,即使出错也会快速的定位到错误的所在
    
    if (true) {
        //而且在同一作用域是不可以重复声明同一个变量名的,let的作
        //用域是块级的
        //let let1 = 10;
        //let let1 = 10;
    }
    
    //const声明是一个常量,赋值后不可以再改变
    
    //解构是有一个有趣的东西,具体可以通过代码来观察 
    let input = [1, 2];
    let [first, second] = input;
    //等价与  let first =input[0]; let second = input[0]
    //也可以当做方法的参数
    function fun4([first, second]: number[]) { };
    fun4(input);
    
    // ...{args} 代表剩余的变量
    let [n1, n2, ...args] = [1, 2, 3, 4, 5];
    //, 忽略中间的变量
    let [s1, , , s4] = [1, 2, 3, 4];
    
    //解构对象
    let o = {
        a: "foo",
        b: 12
    }
    let {a, b} = o;
    
    //属性重命名
    let {a: newName1, b: newName2} = o;
    console.log(newName1);
    
    //展开 可用于数组与对象
    let let3 = [1, 2];
    let let4 = [3, 5];
    let bothPlus = [0, ...let3, ...let4, 6];
  • 相关阅读:
    1.窗体与界面设计-其他技术
    1.窗体与界面设计-窗体控制技术
    1.窗体与界面设计-设置窗体大小
    1.窗体与界面设计-设置窗体位置
    1.窗体与界面设计-标题栏窗体
    1.窗体与界面设计-窗体动画
    1.窗体与界面设计-窗体效果
    远程连接mysql数据库
    linux压缩、解压缩命令
    CSV文件导入Mysql出现的乱码等问题 (转载)
  • 原文地址:https://www.cnblogs.com/LiangSW/p/6252594.html
Copyright © 2011-2022 走看看