zoukankan      html  css  js  c++  java
  • JS调用栈和队列

    1.栈

      先进后出

    1.调用栈:

      是JS引擎追踪函数执行流程的一种机制,当执行环境中调用了多个函数时,通过这种机制,我们能追踪到哪个函数正在执行,执行的函数体又调用了哪个函数

    函数的声明是不会进入栈中的,调用栈就是被调用的函数才会入栈

    如一个函数:

    当执行到第十行,average函数才会被调用,此时average函数入栈,此时average函数中又调用了sum函数,sum函数入栈:

    当sum函数执行结束,sum函数就出栈。再接着执行sum函数后面的代码,当average函数执行结束,average函数出栈。

    再接着执行到11行,console.log()入栈。执行结束console.log()出栈

    此时JS执行环境处于空闲状态

     2.堆栈溢出

      最常见的一个场景就是递归,当使用递归,却没有一个递归结束的判断的时候。

    如:

    此时控制台会出现:

    2.队列

      先进先出

  • 相关阅读:
    python 的基础 学习 第六天 基础数据类型的操作方法 字典
    python 的基础 学习 第五天 基础数据类型的操作方法
    python 的基础 学习 第四天 基础数据类型
    ASP.NET MVC 入门8、ModelState与数据验证
    ASP.NET MVC 入门7、Hellper与数据的提交与绑定
    ASP.NET MVC 入门6、TempData
    ASP.NET MVC 入门5、View与ViewData
    ASP.NET MVC 入门4、Controller与Action
    ASP.NET MVC 入门3、Routing
    ASP.NET MVC 入门2、项目的目录结构与核心的DLL
  • 原文地址:https://www.cnblogs.com/codexlx/p/14182958.html
Copyright © 2011-2022 走看看