js闭包和setTimeout简单介绍以及解决闭包引起的常见问题

1.闭包:

    概念:在一个函数内部可以访问另一个函数的变量的函数。

    优点:

            1.可以利用闭包创建私有变量和方法。

            2.可以保存函数变量到内存中。

            3.访问函数变量。

    缺点:

            闭包由于会将函数变量保存到内存中,所以有可能会造成内存溢出。

 2.setTimeout

 

  •             setTimeout的作用是将代码推迟到指定的时间后执行。实质是:
  •           setTimeout的机制是等到当前脚本同步的任务或队列事件处理完成后,才将会在指定的时间内执行它。所以如果有setTimeout(f, 0)他表示的是等到当前脚本同步的任务或队列时间处理完成后,再执行它。并不是立即执行。
  •             验证(如图):

             js闭包和setTimeout简单介绍以及解决闭包引起的常见问题_第1张图片

              js闭包和setTimeout简单介绍以及解决闭包引起的常见问题_第2张图片

3.解决闭包引起的问题

                js闭包和setTimeout简单介绍以及解决闭包引起的常见问题_第3张图片

                js闭包和setTimeout简单介绍以及解决闭包引起的常见问题_第4张图片

你可能感兴趣的:(js)