zoukankan      html  css  js  c++  java
  • TypeScript入门

    TypeScript 是 JavaScript 的一个超集,支持 ECMAScript 6 标准。

    • 类型批注和编译时类型检查
    • 类型推断
    • 类型擦除
    • 接口
    • 枚举
    • Mixin
    • 泛型编程
    • 名字空间
    • 元组
    • Await

    解决了什么问题

    1. 类型问题。

    2. 参数个数和方法名不匹配的问题。。

    3.增强代码可读性。

    内置的数据类型

    数字类型 number
    字符串类型 string
    布尔类型 boolean
    数组类型
    元组类型
    枚举类型

    联合类型 , 例如 number|string , number[]|string[]等。

    安装

    先下载安装Nodejs

    然后安装TypeScript。 全局安装如下

    npm install -g typescript

    接口使用举例, 以student.ts为例

    
    
    interface IStudent{
        name:string,
        age:number,
        sayHello:()=> string
    }
    
    var zhangSan:IStudent = {
        name:"张三",
        age:18,
        sayHello:()=> { return "我是"+ zhangSan.name+",今年"+ zhangSan.age; }
    }
    
    console.log(zhangSan.name);
    console.log(zhangSan.age);
    console.log(zhangSan.sayHello());
    View Code
    
    

    使用nodejs编译代码

    tsc student.ts

    得到student.js文件。

    使用nodejs运行js文件

    node student.js

    module的使用

    接口文件

    ITeacher.ts

    export interface ITeacher{
        say();
    }
    View Code

    实例文件

    ChineseTeacher.ts

    import teacher = require("./ITeacher")
    export class ChineseTeacher implements teacher.ITeacher{
        public say(){
            console.log("我讲中文。。。");
        }
    }
    View Code

    EnglishTeacher.ts

    import teacher = require("./ITeacher")
    export class EnglishTeacher implements teacher.ITeacher{
        public say(){
            console.log("I say English...");
        }
    }
    View Code

    执行文件

    TestTearch.ts

    import teacher = require("./ITeacher");
    import chineseTeacher = require("./ChineseTeacher");
    import englishTeacher = require("./EnglishTeacher");
    
    function showAllTeacher(teacherSay: teacher.ITeacher){
        teacherSay.say();
    }
    
    showAllTeacher(new englishTeacher.EnglishTeacher());
    showAllTeacher(new chineseTeacher.ChineseTeacher());
    View Code

    使用命令 tsc TestTearch.ts 和node TestTearch.js

    泛型

    function identity<T>(arg: T): T {
        return arg;
    }
    
    let output1 = identity<string>("myString");
    let output2 = identity<number>(10086);
    let output3 = identity(12580);
    View Code

    声明, 使用declare关键字

  • 相关阅读:
    groovy main method is use static main(args) //ok
    undefined reference to
    CuTest: C Unit Testing Framework
    screen to tmux: A Humble Quickstart Guide « My Humble Corner
    main,tmain,winmain()等函数——UNICODE sensensen 博客园
    Adding Unit Tests to a C Project NetBeans IDE 6.9 Tutorial
    罗马转数字
    About Luvit
    KISSY Keep It Simple & Stupid, Short & Sweet, Slim & Sexy...
    Create a CSV file
  • 原文地址:https://www.cnblogs.com/wtujvk/p/14327505.html
Copyright © 2011-2022 走看看