typescript

Typescript
1. 为什么学
面试需要, vue2(ES6) + vue3(Typescript)
webpack - es6/ts -> Javascript

    React(ts)
  2. Javascript超集
    es5【标准】 < es6【标准】 < ts【社区】

    ts = es6 + 强类型
  3. 数据类型
    es6是弱类型语言 (一个变量的数据类型取决于值,数据类型可以改变)
      let a = undefined;
      a = 2;
      a = false;
    ts添加了强类型特性(一个变量的数据类型在声明的时候确定,变量的数据类型一旦确定无法修改)
      int a ;
      a= 2;
      a = false; // 失败!

    基本数据类型
      number
      string
      boolean
      symbol
      null
      undefined
    引用数据类型
      enum 枚举类型
      Object
        通过自定义类来校验对象
        let goods: Goods;
        goods = {}
      Array
        let arr:Array<string>;
        let set:Set<string>;
        let map:Map<number,string>;
      Function
        函数通常存放在对象中,所以我们通过接口来约束对象,进而约束函数
        interface Foo{
          login(user:string,passwd:string):User;
        }
  4. hello world
    ts --Typescript c---> js
    ts可以设置其编译级别(ES5?ES6)
    1) tsc hello.ts --target es6
    2) tsconfig.json

    馒头    馒头  
    .ts   .js     nodejs  linux
    .java .class  jvm   linux
    .c    .o      linux

    1) 安装typescript
      $ cnpm install -g typescript
    2) 编写ts代码
      hello.ts
        let a:number;
        a = 1;
        console.log(a);
    3) 编译
      $ tsc hello.ts 
    4) 执行
      $ node hello.js
  5. 面向对象
    1) 类
      class Animal {
        name:string;
        age:number;
      }
      class Dog extends Animal{
        color:string;
      }
      let dog:Dog;
      dog = new Dog();

      let animal:Animal;
      animal = new Dog();
      animal.color; // 无法访问

    2) 泛型
      父类类型的引用指向子类对象,通过父类类型的引用只能访问父类中声明的特性。如果子类重写了父类的方法,通过父类类型引用来调用该方法,体现子类特性(本质还是调用子类中的方法【原型链中的就近原则】)
    3) 方法重写、方法覆盖
      子类中提供了一个与父类签名(函数名,参数类型,返回值)完全一致的方法
    4) 抽象类
      如果一个类中出现了抽象方法,那么这个类一定是抽象类;抽象类无法实例化,存在的意义是为了让其他子类继承。
    5) 接口
      抽象到极致抽象类;接口中的方法全部都是抽象方法,这些方法无需再使用abstract来修饰

      接口是一种特殊的类,子类不再通过extends来继承,而是通过implements来实现。 
    6) 访问修饰符
      private       只有在当前类中可以进行访问
      protected     在当前类、子类中可以访问
      public        所有地方都可以访问
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值