zoukankan      html  css  js  c++  java
  • typescript的入门

    命令行使用tsc

    1.安装typescript

    npm install -g typescript

    2.新建一个index.ts 输入export hello class{}

    3.编译 tsc index.ts

    4.查看编译后的文件

    ====================

    在webstorm使用tsc

    1.创建typescript文件
    2.编写tsc代码
    3.点右上角的配置
    4.配置自动编译tsc文件即可


    https://www.imooc.com/video/13522


    ====================

    字符串特性

    1.多行 用数字1旁的符号包裹字符串

    var a=`asd
    asd
    asd
    asd
    asd
    `
    2.模板

    var dss="123";
    console.log(`${dss}`);

    3.自动拆分字符串

    =====================

    参数类型

    var s:string = "asd";
    var s=123; 在tsc会报错


    var s= "asd";
    s=123; 也会报错

    var s:any= "asd";
    s=123; 不会报错

    function s(a:string,v:boolean) :string{
    return "";
    } //返回值的参数

    class Person{
    name:string
    }

    ====================

    参数的默认参数

    var s:string = "1";

    function tes(a:string,b:string,c:string="jojo"){

    }
    tes("a","b");
    默认值的必须声明在最后

    =================


    可选参数

    var s:string = "1";

    function tes(a:string,b?:string,c:string="jojo"){

    }
    tes("a");

    可选参数必须是必选参数后面


    =================

    不限制参数

    function test(...dss){

    }
    //可以传任意数量的参数

    ================

    返回的参数直接赋值

    function test(a,b,c){
    return{
    a:"1",
    b:"2",
    }
    }
    var {a,b}=test();

    function test(a,b,c){
    return{
    a:"1",
    b:"2",
    c:{
    a:1,
    b:2
    }
    }
    }
    var {a,b,c:{c}}=test();

    针对数组的赋值

    var arr=[1,2,3];
    var [a,b]=arr;

    =================

    箭头表达式


    //函数
    var sun = (a,v)=>{
    return a+v;
    }

    ================


    ======

    泛型
    class Person{}
    var word :Array<Person>=[];

    这个数组只能放person的对象

    ==========

    接口

    //声明接口

    interface Iperson{
    name:string;
    age:number;
    eat();
    }

    //实现接口
    class Person implements Iperson{
    name:string;
    age:number;
    eat(){

    }
    }


    =============

    模块

    a.ts

    export var pro1;
    export function test1(){

    }

    b.ts

    //模块

    import {pro1, test1} from "./a";
    console.log(pro1)

    test1()
    ========================

    https://github.com/DefinitelyTyped/DefinitelyTyped

    加载其他文件 xxx.d.ts

    ========================

  • 相关阅读:
    centos 7 -- Disk Requirements: At least 134MB more space needed on the / filesystem.
    DNS Server Centos 7
    生成report由Eamil定時寄出
    WRT 版本说明
    cisco linksys ea3500 刷机 openwrt
    [QNAP crontab 定時執行程式
    实例 编辑 .bashrc(不断更新)
    tar命令
    ls -l 显示年份
    git 丢弃本地代码时遇到的问题
  • 原文地址:https://www.cnblogs.com/norm/p/8000369.html
Copyright © 2011-2022 走看看