• 面试问题


    什么是闭包?
    1. 当一个内部函数被调用,就会形成闭包,闭包就是能够读取其他函数内部变量的函数
    定义:闭包是能够读取其他函数内部变量的函数,在js中,只有函数内部的子函数才能读取局部变量,所以闭包一般是一个函数套函数的结构,将子函数返回到外面用一个全局变量存储起来,这就叫闭包。
    特点:①函数套函数,返回子函数。
       ②返回的子函数存在一个全局变量中。
       ③执行外层函数后,该函数的局部变量会被存储在堆中,不会被垃圾回收机制回收。
    优点:①防止变量被污染
          ②可以保存私有变量
    缺点:会造成内存泄漏
    函数中用var定义的变量在该函数运行完即被销毁。而在闭包中,内层函数调用了外层函数的局部变量,并且返回给外面的全局变量,该局部变量会被存储起来。因为外层函数返回的是一个函数(返回了内层函数),函数就是一个对象,所以该局部变量被保存到了堆中,即使将接收的那个全局变量设置为null,也不会将该局部变量销毁,这样就保存了外层函数的私有变量了,同时也可能会造成内存泄漏。
     
    Promise 的作用?
    promise 是一个异步加载的方式, 处理时使用 new Promise返回一个对象, 该对象可以调用then方法, then方法中有两个参数,第一个参数是加在成功后时执行的, 第二个参数是加载失败时执行的, then方法中可以通过Promise进行链式调用
     
     
     
    1当一个内部函数被调用,就会形成闭包,闭包就是能够读取其他函数内部变量的函数
  • 相关阅读:
    【笔记】机器学习
    【笔记】机器学习
    【NLP】暑假课作业3
    【NLP】暑假课作业1
    【笔记】机器学习
    【转】谈谈我对攻读计算机研究生的看法
    Android学习笔记-事件处理
    精读《C++ primer》学习笔记(第四至六章)
    那些年,当我还是个小白
    精读《C++ primer》学习笔记(第一至三章)
  • 原文地址:https://www.cnblogs.com/maxiag/p/11249779.html
Copyright © 2020-2023  润新知