2021-07-16

闭包,防抖,截流

🎄 闭包

  • 闭包就是能够读取其他函数内部变量的函数,将函数内部和外部连接起来的一座桥梁,即定义在函数内部的函数。
  • 用途
    • 读取函数内部的变量
    • 让变量的值始终保持在内存中
  • 注意
    • 闭包对内存消耗很大,会影响网页的性能,在 IE 中可能导致内存泄漏,在退出函数之前,将不使用的局部变量全部删除
    • 闭包会在父函数外部,改变父函数内部变量的值
      • 如果把父函数当作对象 object 使用,将闭包当作公用方法 Public Method ,内部变量当作私有属性 private value 使用时,不要随便改变父函数内部变量的值

🎄 防抖

  • 一定时间内,函数只会执行最后一次任务
  • 缺点:当用户在指定时间间隔中一直操作,那么 setTimeout 里的函数永远不会执行

🎄 截流

  • 一定时间内,函数只执行一次
  • 缺点:如果用户一直操作,那么 setimeout 里的函数会在指定时间间隔后都会执行一次

🎄 防抖截流的区别

No comments:

Post a Comment