• 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];
  • 相关阅读:
    JS事件冒泡
    iis设置Gzip后,无后缀的url无法压缩解决 MVC iis GZIP
    SQL中的循环、for循环、游标
    采用CDN加速后,如何在程序里获取用户IP地址
    Resharper 的快捷键
    JS防后退跳转
    ASP.NET MVC如何实现自定义验证(服务端验证+客户端验证)
    Log4net创建日志及简单扩展
    统治世界的十大算法
    ffmpeg save rtsp stream
  • 原文地址:https://www.cnblogs.com/LiangSW/p/6252594.html
Copyright © 2020-2023  润新知