• 精读《现代 JavaScript 概览》


    摘要

    文章地址: https://auth0.com/blog/glossary-of-modern-javascript-concepts/ https://auth0.com/blog/glossary-of-modern-javascript-concepts-part-2/

    主要内容

    scope

    1. global 全局域, 动态作用域是在运行时确定的。
    2. local 限定域,动态作用域是在运行时确定的。
    var foo=1;       
    function static(){                
      alert(foo);          
    }      
    !function(){             
      var foo=2;              
      static();      // alert  2  
    }();
    
    1. lexical 词法作用域 = 静态作用域,词法作用域其实是指作用域在词法解析阶段既确定了,不会改变,唯一!!
    var foo=1;       
    function static(){                
      alert(foo);          
    }      
    !function(){             
      var foo=2;              
      static();      // alert  1   
    }();
    

    闭包

    闭包的形成在于, 当一个在函数内声明的函数可以引用外部函数的局部变量. 就形成了闭包.

    web-component

    提供类似于 frame 的概念,隔离 css 样式,浏览器需要加载 polymer polyfills 才可正常运行,因为现代浏览器还不支持 web-component 标准

    1. smart-component 负责接收事件,逻辑处理
    2. dumb-component 负责页面元素以及事件发送

    编译:

    just in time (JIT) 编译 , 浏览器运行时编译

    Ahead of time (AOT) 编译 , 预编译,浏览器可直接加载运行

    打包:

    Tree Shaking, 依赖于 ex2015 的 export import, rollup.js 采用这种方法编译

    Hot and Cold Observables

    Observables 和数组类似, 只不过数组是被保存在内存中, 而Observables的每一个元素则是异步加入进来. 我们可以订阅这些 observables.
    Hot Observables 即使我们没有订阅它们. 比如说 用户的操作界面的 按钮点击事件, 鼠标移动, 窗口大小改变, 这些都是 Hot Observables.
    cold observable则是需要我们去订阅, 并且会在我们订阅的时候开始执行.
    参考: http://blog.csdn.net/xiongkai520520/article/details/52470328

    高阶函数

    函数作为 JavaScript 的一等公民, 可以跟普通数据类型一样, 被存储, 或者被作为值传参. 而高阶函数就是一种函数 可以接收另外一个函数作为入参, 或者返回一个函数作为结果.

    Imperative and Declarative Programming(声明式和命令式编程)

    声明式编程, 描述一段代码的逻辑怎么被显式调用去改变程序的状态. 命令式编程, 描述一段代码的逻辑, 而不需要描述如何完成这段逻辑.
    JavaScript可以同时被写为 声明式和命令式编程方式, 但是随着函数式编程的兴起, 命令式编程将变得更加普遍.
    参考: http://www.cnblogs.com/Chen-XiaoJun/p/6188242.html

  • 相关阅读:
    Python导入运行的当前模块报错
    关于相对性的思考
    B+树
    DNS:从零搭建公司内网DNS服务器
    【05】Saltstack:配置详解
    【04】Saltstack:配置管理
    【03】Saltstack:远程执行
    【02】Saltstack:Grains and Pillar
    【01】Saltstack:从零开始 Saltstack
    【08】Kubernets:Service
  • 原文地址:https://www.cnblogs.com/huxiaoyun90/p/7536644.html
Copyright © 2020-2023  润新知