Learning Typescript 读书笔记2

作者: GunnerAha | 来源:发表于2018-06-04 09:11 被阅读18次

    Chap 3 函数

    1.函数定义包括函数声明和函数表达式,函数声明能力提升,可以使用在定义之前。

    2.函数参数支持可选(?),必须是最后一个参数;支持默认值(参数类型后加=),必须是最后一个;支持可变参数(...)必须是最后一个。

    3.函数支持重载,因为强语言类型的特性。而且重载函数支持特殊重载签名,其参数必须为字符串,可以根据字符串的内容重载,但是必须有一个未特殊签名的函数放到最后,例如:

    interface Document{
      create(tag:"div"):HTMLDIVEle;
      create(tag:"span"):HTMLSPANEle;
      create(tag:string):HTMLEle;
    }
    

    4.var定义的变量的作用域在函数内,let和const是块级作用域,const不能修改。

    5.IIFE(立即执行函数表达式)可以实现块级作用域名。例如:

    var bar = 0;
    (function(){
      var foo=0
    })();
    

    class中的私有变量就是通过IIFE实现的。

    1. 函数支持泛型。

    7.箭头函数会自带this变量,因此在setTimeout等函数中执行是,this引用属性不变。

    8.异步编程:

    • 传统的方法是回调函数,调用回调函数的函数优先级别高,称之为高阶函数
    • 回调函数具有回调陷阱,不利于理解和阅读
    • Promise用于解决回调陷阱,其实现的库常用为:Q。Promise有三种状态:
      • pending:初始化
      • fulfilled:异步操作成功的状态
      • rejected:异步操作失败的状态
        使用时先声明一个promise,然后调用then和catch方法分别处理fulfilled和rejected状态的处理动作。

    9.关于前后端模板:

    • 前端:handlebar
    • 后端:velocity/freemarker/Thymeleaf等

    相关文章

      网友评论

        本文标题:Learning Typescript 读书笔记2

        本文链接:https://www.haomeiwen.com/subject/zuhesftx.html