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.队列

      先进先出

  • 相关阅读:
    第四次作业—— 分析比较各种软件构建环境
    如何实现点击事件触发之后刷新还保存原值
    简单理解js闭包
    javascript中 __proto__与prorotype的理解
    原生和jQuery的ajax用法
    getElementById和querySelector方法的区别
    关于javascript闭包理解
    第二篇 进销存管理系统冲刺博客
    个人项目:WC
    自我介绍+软工五问
  • 原文地址:https://www.cnblogs.com/codexlx/p/14182958.html
Copyright © 2011-2022 走看看