TypeScript学习手册

首先明白TypeScipt是js的超集。我们所用Ts的语法最后还是会被转换成Js

0 安装

$ npm install -g typescript

然后使用 tsc 命令 将.ts 文件 编译成.js文件

eg:

tsc test.ts

1 声明变量时同时写明数据类型

1.1 数字

var numT : number = 6

1.2 字符串

var strT : string = ‘hello’

1.3 数组

var arrT : number[] = [1,2,3]

1.4 布尔值

var flag : boolean = false;

1.5 元组

var tupleT : [string , number];

tupleT=[‘hello’ , 100]

1.6 枚举

enum Color {red = 1,green,yellow}

var c=Color.red

1.7 Any (用于不定的变量类型)

var anyT : any = 4

1.8 Void (空返回)

function test() : void { console.log(1) }

2 类与继承


class people{
    name:string;
    age:number;
    sex:string;
    private word:string;
    constructor (name:string,sex:string,age:number){
        this.name=name;
        this.sex=sex;
        this.age=age;
        this.word='321';
    }
    say(){
        console.log(`private word is ${this.word} my name is ${this.name}, sex is ${this.sex}, ${this.age} years old`);
    }
}


var t=new people('haohao','man',1);
console.log(t.name);
t.say();

class hero extends people{
    constructor (name:string,sex:string,age:number){
        super(name,sex,age);
    }
    fly(){
        console.log("I CAN FLY");
    }
}

var h=new hero("X","unkonw",100);
h.say();
h.fly();

3 接口


interface heroSkill{
    power:number
}

function kill(Mypower:heroSkill){
    console.log(Mypower.power);
}

let hs={power:111};

kill(hs);

4 可迭代性

for..of 与 for..in 语句

for..in迭代的是对象的 键 的列表,而for..of则迭代对象的键对应的值。

ps:当一个对象实现了Symbol.iterator属性时,我们认为它是可迭代的。 一些内置的类型如Array,Map,Set,String,Int32Array,Uint32Array等都已经实现了各自的Symbol.iterator。 对象上的Symbol.iterator函数负责返回供迭代的值。

let  list = ['a','b','c'];
for(let i in list){
    console.log(i);
}

for(let i of list){
    console.log(i)
}

5 枚举

5.1 反向映射

enum test{A}
let a = test.A;
let aName=test[test.A];
console.log(aName);

你可能感兴趣的:(学习书,typescript,javascript)