zoukankan      html  css  js  c++  java
  • 闭包 未完待续

    闭包:函数执行形成一个私有的作用域,保护里面的私有变量不受外界的干扰,这种保护机制称之为闭包

    大部分开发者认为:形成一个不销毁的私有作用域,是闭包。

    //闭包。柯里化函数
        function fn(){
            return function (){
    
            }
        }
        var f = fn()//fn执行函数内部返回一个堆内存,被f占用,此时fn不能被销毁。所以形成闭包
    //闭包 惰性函数
        var utils =(function (){
            return {
    
            }
        })()//当前自执行的私有作用域不会销毁,因为里面return的东西被utils占用。utils占用了自执行的函数返回的对象
        //这也是整个JS里面2个高阶编程技巧,这两个技巧都是利用形成一个不被销毁的栈内存。

    真实的项目中为了保证JS的性能(堆栈内存的性能优化),应该尽可能的减少使用闭包。(因为产生一个闭包就会产生一个不销毁的栈内存,有不销毁的栈内存就会有一个不销毁的堆和一个不销毁的栈)性能会有所消耗,所以要减少对闭包的使用

    真实项目中闭包的两个作用:1.保护。2.保存

    保护:私有变量不受外界的干扰

    保存:形成不销毁的栈内存,把一些值保存下来方便后面调取使用

    说一下闭包?

    说一下JS中的异步编程?

    说一下promise的应用和原理?

    async和await是干啥的?

    es6有哪些新语法?相对于es5都有哪些区别?

    说一下js中dom事件机制

  • 相关阅读:
    jmeter正则表达式书写
    Jmeter中if控制器的使用
    Jmeter组件之-Test Fragment(测试片段)
    Jmeter生成测试报告
    idea+maven+testng环境搭建以及基本使用
    ArrayList,HashSet,HashMap
    JAVA提供了八大基本数据类型对应的引用数据类型
    Properties解析
    JSON解析
    excel 解析
  • 原文地址:https://www.cnblogs.com/menggege/p/14175171.html
Copyright © 2011-2022 走看看