前端工程师必须懂得概念(一)

调用堆栈

调用栈是解析器的一种机制,可以在脚本调用多个函数时,跟踪每个函数在完成执行时应该返回控制的点。(如什么函数在执行,什么函数被这个函数调用,下一个调用的函数是谁。)

  • 当脚本要执行一个函数时,解析器把该函数添加到栈中并执行
  • 任何被这个函数调用的函数会进一步添加到调用栈中,并且会运行到他们被上个程序调用的位置
  • 当函数运行结束后,解释器将他从调用栈中取出,并在主代码列表中继续执行代码
  • 如果栈调用的空间比分配给它的内存空间大,则会导致”栈溢出”