zoukankan      html  css  js  c++  java
  • TypeScript学习

    一、基础概念

    1、TypeScript是什么?

      答:是JavaScript的超集。

    2、TypeScript用来干什么?

      答:跟js一样,只是比js好。

    3、为什么要用他?即特点、优点

      答:最重要的两点,(1)angular2框架就是用typescript编写的框架。(2)符合ES6规范(ES6是未来的js开发标准)(3)在开发阶段十分便利(强大的IDE语法提示、类型检查功能)

    二、知识点摘选

    1、typescript字符串新特性。

      用双撇号 `` 代替单引号 ' '、双引号 " "。新特性能①随意换行不用+号串联。②拼接html代码极其方便、可读性高。③可插入变量、方法。如变量${name}

    2、析构表达式

      (1)十分强大的特性!简化了操作和代码。

      (2)通过表达式将对象或者数组拆解成任意数量变量。

      (3)代码:注意①设置的变量要和所调取的对象或者数组变量名一致,如果想用自己的变量名可以这样写 let { age:myAge, adree:userAdree, userName:name } = data;

    let data = {
        userName: 'xiao li',
        age: '18',
        adree:'guangzhou'
    }
    let { age, adree, userName } = data;
    

       析构表达式和常规书写对比,可以看出代码十分简化。

    3、箭头表达式

    (1)函数里面为单行代码时,可以省去大括号和关键字return。多行则不行。

    //传统匿名表达式
    var myFun=function(){
        return true 
    }
    
    //箭头表达式
    var myFun=()=>true;
    
    //或者
    var myFun=(item)=>{
       var num=item+1;
       retrun num      
    }
    

     (2)箭头函数的意义一个是简化代码,最重要的是:解决了常规函数里this指向不明的问题。(上面函数找不到this.name,下面函数正常)

     4、循环表达式forEach()、for in和for of

    (1)forEach()不能在执行过程中跳出循环。即不能用break

    (2)for in。输出数组或者对象的下标、键

    //循环数组的时候,key是数组的下标
    var myArray=['jem','sam','tony'];
    for(var key in myArray){
      console.log(key)   
      console.log(myArray[key])  
    }
    //0  1   2
    //jem sam tony
    
    //循环对象的时候,key是对象的键
    var myObj={
       name:'tony',
       age:18,
       sex:'m'      
    }
    for(var key in myObj){
       console.log(key)
       console.log(myObj[key])   
    }
    //name  age  sex
    //tony  18  m

     (3)for of。他可以①循环多种类型(arr、string等等)②可以跳出循环。③但是不能遍历对象类型!

    //跳出循环,注意:item是数组的值
    var myArr=[1,2,3,4]
    for(var item of myArr){
       if(item>2) break;
       console.log(item)   
    }
    //1 2
    
    //循环字符串
    var myArr='name'
    for(var item of myArr){
       console.log(item)   
    }
    //n
    //a
    //m
    //e

    5、面向对象特性:https://www.imooc.com/video/13536/0

    (1)extends。说明类的继承关系。class child extends Parent { } 前者继承后者类的属性和方法等。后者可以称作前者的父类。同时,子类因为继承了父类,所以使用方法也要遵循父类使用方法。比如参数的设置、构造函数。

    (2)super。两个作用。①调取父类的构造函数。②调取父类的函数。

    注意:①super是在子类内部使用。②既然继承了父类,为什么不用this调用父类方法属性呢?因为子类背身可能出现同名方法属性。这样super.eat()和this.eat()就指向了不同类里的方法。

    三、零散知识点

    1、模板字符串属于string类型。let myName:string=` my name is ${name} `

  • 相关阅读:
    poj 2418 Hardwood Species
    hdu 3791 二叉搜索树
    九度oj 1544 数字序列区间最小值
    九度oj 1525 子串逆序打印
    九度oj 1530 最长不重复子串
    九度oj 1523 从上往下打印二叉树
    P1190 接水问题
    P1179 数字统计
    P1083 借教室
    P1079 Vigenère 密码
  • 原文地址:https://www.cnblogs.com/gouzei/p/10794721.html
Copyright © 2011-2022 走看看