zoukankan      html  css  js  c++  java
  • Typescript

    Typescript官网:https://www.tslang.cn/docs/handbook/basic-types.html

    https://blog.csdn.net/yuanlaile/article/details/90664615

    一、 Typescript 介绍

    1. TypeScript 是由微软开发的一款开源的编程语言。
    2、TypeScript 是 Javascript 的超集,遵循最新的 ES6、Es5 规范。TypeScript 扩展了 JavaScript的语法。
    3、TypeScript 更像后端 java、C#这样的面向对象语言,可以让 js 开发大型企业项目。
    4、谷歌也在大力支持 Typescript 的推广,谷歌的 angular2.x+就是基于 Typescript 语法。
    5、最新的 Vue 、React 也可以集成 TypeScript。
    6、Nodejs 框架 Nestjs、midway 中用的就是 TypeScript 语法。

    二,TypeScript安装和编译

      安装:建议使用cnpm

    cnpm install -g typescript

      查看版本

    tsc -v

    三,运行

    1. 浏览器不支持ts语法,需要转成es5的语法,在根目录下运行 tsc index.ts 会自动生成一个js文件,es5的语法

    2.Typescript 开发工具 Vscode 自动编译.ts 文件

    • 项目文件夹下 执行 tsc --init  生成配置文件 tsconfig.json

     

    • vscode 点击: 终端->运行任务->typescript->tsc:监视-tsconfig.json 然后就可以自动生成代码了

    Typescript 的数据类型

        typescript中为了使编写的代码更规范,更有利于维护,增加了类型校验,在typescript中主要给我们提供了以下数据类型

            布尔类型(boolean)
        var flag:boolean=true;
        // flag=123;  //错误
        flag=false;  //正确
        console.log(flag);
            数字类型(number)
            var num:number=123;
            num=456;
            console.log(num);
            字符串类型(string)
            var str:string='this is ts';
            str='haha';  //正确
            str=true;  //错误
            数组类型(array)
        ts中定义数组也要指定类型
    // 1.第一种定义数组的方式
    var arr: number[] = [11, 22, 33];
    console.log(arr);
    
    //2.第二种定义数组的方式
    var arr2: Array<number> = [11, 22, 33];
    console.log(arr2);
    
    //3、第三种
    var arr3: any[] = ["131214", 22, true, { name: "范顺" }];
    console.log(arr3);
            元组类型(tuple)
        属于数组的一种,定义多类型数组
               let arr6: [number, string, any] = [123, "this is ts", { age: 18 }];
               console.log(arr6);
            枚举类型(enum)
        相当于js对象,键值对
            enum 枚举名{ 
                标识符[=整型常数], 
                标识符[=整型常数], 
                ... 
                标识符[=整型常数], 
            } ;
                enum Flag {success=1,error=2};
                let s:Flag=Flag.success;
                console.log(s);

              enum Color {blue,red,'orange'};
              var c:Color=Color.red;
              console.log(c);   //1  如果标识符没有赋值 它的值就是下标
             enum Color {blue,red=3,'orange'};
             var c:Color=Color.red;
                  console.log(c);   //3
                  var c:Color=Color.orange;
                  console.log(c);   //4,这个时候它就不是3了,他会根据前一个值 + 1
            任意类型(any)
    // var num:any=123;
    // num='str';
    // num=true;
    // console.log(num)
    
    //任意类型的用处
    // var oBox: any = document.getElementById("box");
    // oBox.style.color = "red";
            null 和 undefined
    // var num:number;
    // console.log(num)  //输出:undefined   报错
    
    // var num:undefined;
    // console.log(num)  //输出:undefined  //正确
    
    // var num:number | undefined;
    // num=123;
    
    // console.log(num);
    
    //定义没有赋值就是undefined
    // var num:number | undefined;
    // console.log(num);
    
    // var num:null;
    // num=null;
            void类型
        typescript中的void表示没有任何类型,一般用于定义方法的时候方法没有返回值。
    /* 
    //正确写法
    function run():void{
    
            console.log('run')
        }
    
        run();
        
        */
    
    //错误写法
    /*
            function run():undefined{
    
                console.log('run')
            }
    
            run();
    
        */
    
    //正确写法
    /*
       function run():number{
    
           return 123;
        }
    
        run();
            never类型
        是其他类型 (包括 null 和 undefined)的子类型,代表从不会出现的值。这意味着声明never的变量只能被never类型所赋值

     

  • 相关阅读:
    小程序 canvas实现图片预览,图片保存
    MySQL实现排名并查询指定用户排名功能
    微信小程序canvas把正方形图片绘制成圆形
    WINDOW 安装ImageMagick服务端和PHP的imagick插件
    安装PHP扩展32位与64位的误区(x86与x64的查看)
    linux 安装 ImageMagick 和 imagick 扩展
    php 获取顶级域名
    php中通过Hashids将整数转化为唯一字符串
    yii2项目中运行composer 过程中遇到的问题
    yii2 mysql根据多个字段的数据计算排序
  • 原文地址:https://www.cnblogs.com/shun1015/p/14389775.html
Copyright © 2011-2022 走看看