JavaScript · Intermediário · Inglês · Técnico
call stack
Estrutura que registra as funções em execução, empilhando cada chamada e desempilhando ao retornar. O JavaScript tem uma pilha por thread, com tamanho limitado.
Onde usar
Aparece em stack traces de erros e no 'Maximum call stack size exceeded' causado por recursão infinita. Em code review, recursões profundas pedem um laço ou uma pilha própria.
Em código
function a() { b(); }
function b() { c(); }
function c() { throw new Error('falhou'); }
try { a(); } catch (e) {
console.log(e.stack); // c, b, a, ...
}Exemplos
The stack trace shows the whole call stack at the error.
O stack trace mostra toda a call stack no momento do erro.
Infinite recursion blew the call stack.
A recursão infinita estourou a call stack.
Cuidado
Confundir a call stack com a fila de tarefas do event loop: a pilha é o que está rodando agora.
Sinônimos
pilha de chamadas