zoukankan      html  css  js  c++  java
  • JS中的闭包问题总结

    • 严格意义上的闭包,严格闭包通过栈内存不销毁,保护内部变量,而且下一级作用域可以访问内部变量
    • 更严格意义上的闭包,函数可以在父函数外面调用父函数作用域的值
    • 在函数执行的时候,函数体中有返回值,函数执行的作用域不销毁
    • 调用了上一级栈内存的变量,并返回给函数外,造成了上一级作用域不销毁(栈内存)
    • 缺点
      • 会造成很多不销毁的栈内存,影响浏览器的性能
    • 优点
      • 保护内部变量不被外界所污染,内部变量也不污染外部变量
      • 可以通过返回值访问内部变量的值
    • 销毁的作用域
      • 当函数执行完,如果没有返回值,供外面作用域调用则直接销毁
      • 在函数内部的自执行函数,虽然调用了上级作用域的值,但是函数执行完作用域依然销毁
      • 在我们的函数执行的返回值,紧跟着当前函数直接执行的时候,作用域也会销毁
      • 产生第三方对函数内部变量有承接,赋值的时候,当前作用域不销毁,这种销毁时暂时不销毁
      • 在绑定事件中的函数,函数的栈内存是永远不销毁的
      • 函数和DOM形成映射,是操作DOM的时候方法,这时候的函数作用域是不销毁的
  • 相关阅读:
    Props属性
    逆卷积:convtranspose2d(fractionally-strided convolutions)
    nn.ReflectionPad2d(镜像填充)
    conv1*1的作用
    如何将jupyter中的.ipynb文件转换成python中的.py文件
    低光图像增强学习
    pytorch 中的variable函数
    BCELoss和BCEWithLogitsLoss
    正则化的理解
    网络压缩方法总结
  • 原文地址:https://www.cnblogs.com/Scar007/p/7640643.html
Copyright © 2011-2022 走看看