Perguntas frequentes de entrevista de JavaScript
Por Aaron Cao · Atualizado em

Espere fundamentos: closures, o event loop, a vinculação do this, protótipos, e escopo com var, let e const. Depois vêm exercícios de código como implementar um debounce, achatar um array, ou escrever um utilitário de promise, além de temas de navegador como delegação de eventos. Entrevistas sênior acrescentam padrões async e desempenho.
Quais fundamentos de JavaScript mais aparecem?
A lista de perguntas de JavaScript parece infinita, e decorar perguntas aleatórias é o jeito mais lento de encará-la. Esta seção reduz o escopo aos conceitos aos quais os entrevistadores voltam em quase toda entrevista, para que sua prática corresponda à distribuição real. Cinco temas respondem pela maior parte das entrevistas de triagem:
- Closures: o que uma função captura, o clássico bug da variável do loop, e por que os padrões de módulo funcionam.
- O event loop: call stack, fila de tarefas e fila de microtasks, e em que ordem os logs aparecem em um exemplo misto.
- A vinculação do this: padrão, implícita, explícita com call e apply, e como as arrow functions se diferenciam.
- Protótipos: busca de propriedades ao longo da cadeia, e para o que a sintaxe class é compilada.
- Escopo: var em relação a let e const, hoisting, e a temporal dead zone.
Coerção de igualdade com == em relação a ===, truthiness, e métodos de array como map, filter e reduce completam o nível de triagem. Se você consegue explicar cada item acima em voz alta em menos de um minuto, a rodada de fundamentos está garantida.
Quais exercícios de código vale a pena praticar?
Além das perguntas conceituais, a maioria das rodadas de JavaScript inclui um pequeno exercício de implementação feito ao vivo. O conjunto recorrente é pequeno e vale a pena treinar até que cada um leve minutos, não várias tentativas:
- Implementar
debounceethrottle, e dizer quando cada um se encaixa. - Achatar um array aninhado com e sem recursão.
- Escrever uma versão simplificada de
Promise.allque rejeita na primeira falha. - Construir um pequeno event emitter com on, off e emit.
- Clonar um objeto em profundidade e apontar quais casos sua versão deixa passar.
Um candidato front-end entrevistando para uma vaga pleno, por exemplo, pode receber debounce como aquecimento, e depois ser solicitado a conectá-lo a um campo de busca e explicar o que acontece com as requisições em andamento. O follow-up é o teste de verdade; os entrevistadores estendem o exercício para ver onde termina seu domínio da linguagem.
Praticar isso em voz alta contra um entrevistador que questiona é o que faz fixar; a página de entrevista simulada mostra como conduzir sessões cronometradas com perguntas de acompanhamento.
Como são as perguntas de navegador e async?
Vagas voltadas a navegador acrescentam uma camada sobre os fundamentos da linguagem. Delegação de eventos é o ponto central: por que um único listener no elemento pai é melhor que mil nos filhos, como o bubbling viabiliza isso, e quando a fase de captura importa. Processamento em lote de atualizações do DOM, layout thrashing, e o que dispara um reflow aparecem em entrevistas voltadas a desempenho.
As perguntas sobre async convergiram para um formato padrão: um trecho misturando setTimeout, cadeias de promise, e funções async, em que você precisa prever a ordem de saída. A resposta depende da ordem entre microtasks e macrotasks, e os entrevistadores se importam mais com o porquê do que com a sequência em si. Tratamento de erros através de fronteiras de await, encadeamento de promise em relação a aninhamento, e fazer requisições competirem com Promise.race completam o conjunto.
Como essas rodadas diferem entre os formatos de código, comportamental, e design de sistemas é abordado no hub de tipos de entrevista.
Como praticar para que isso valha na rodada de verdade?
Ler respostas dá sensação de produtividade, mas quase não se transfere. A rodada é falada, cronometrada, e interativa, então a prática também precisa ser. Faça sessões simuladas em que você narra enquanto digita, é interrompido com perguntas de acompanhamento, e enfrenta um relógio correndo; é essa pressão que torna a recuperação automática. Conjuntos específicos para outras linguagens e stacks estão no hub de bancos de perguntas.
Uma observação honesta: rodadas reais de JavaScript costumam acontecer em um editor compartilhado com sua tela visível, e avaliações supervisionadas gravam isso. Um assistente serve para preparação e prática, não para a tela compartilhada ao vivo. Onde ajuda ao vivo é legítima, em ligações telefônicas sem tela compartilhada ou nas suas próprias sessões de preparação, a sobreposição da SubcueAI permanece local na sua máquina e nenhum bot entra na chamada.
FAQ
As entrevistas de JavaScript são só problemas de LeetCode?
No que um desenvolvedor júnior deve focar primeiro?
Como explico o event loop de forma simples?
As entrevistas de JavaScript cobrem TypeScript?
Perguntas relacionadas
- Que perguntas devo esperar em uma entrevista da Databricks?
- Que perguntas devo esperar em uma entrevista .NET?
- Que perguntas devo esperar em uma entrevista para engenheiro de qualidade?
- Que perguntas devo esperar em uma entrevista quant?
- Que perguntas sobre Snowflake devo esperar na entrevista?
- Que perguntas devo esperar numa entrevista para professor?