Frontend
Para os valores const a = null e const b = 0, determine os resultados das expressões com || e ??, e explique a diferença entre os operadores.
Se uma função estiver tipada e uma string for passada em vez de um número, quando ocorrerá o erro: na fase de desenvolvimento?
Quais são as formas de copiar um objeto em JavaScript?
Como corrigir uma tarefa com var no ciclo, além de substituir var por let?
Qual é a diferença entre setTimeout e await de uma promessa em termos de microtarefas e macrotarefas no event loop?
O que é hoisting (hoisting)?
const S = { id: 1, nome: "Ivan", idade: "39", tel: [phone] }; function getParam(obj, key) { return obj[key]; } getParam(S, "tel"); getParam(S, "job");
Já utilizou a biblioteca Yup? Em que ela difere de outras soluções de validação?
Se tivesse que decidir entre implementar microfrontends ou usar um monolito, como tomaria a sua decisão?
Existe mais uma fase de renderização que faz parte do processo geral — consegue lembrar qual é? Para que serve a separação em camadas (composição)?
Explique as diferenças entre estes tipos utilitários do TypeScript e os seus casos de uso: ```typescript type someType1<T extends object> = Partial<T>; type someType2<T extends object> = T[keyof T]; type someType3<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>; type SomeType4<T extends object, K extends keyof T = keyof T> = Omit<T, K> & Partial<Pick<T, K>>; ```
O que é um endereço IP?
Explique o problema com herança no código onde a classe estende Object, e sugira uma solução.
Quais são os desvantagens do FSD? Quando não o implementaria?
Após receber o HTML, como é que o navegador determina o seu tipo, constrói a estrutura da página e conecta o JavaScript?
O que achas que te falta agora para te tornares um senior confiante?
Já teve algum caso em que usou intencionalmente uma chave fora da lista de elementos?
/** * @param {Array} prev * @param {Array} next * @param {(item: any) => string} keyFn * @returns {{ added: Array, removed: Array }} */ export function diffGeneric(prev, next, keyFn) { // escreva o código aqui return { added: [], removed: [] }; } // prev = [1,2,3,4,6] // next = [2,3,4] // added = [] // removed = [1,6]
Existirão situações em que o Next.js não faz sentido de usar e um SPA normal em React é suficiente?
Por que é chamado addField no construtor no código e que problemas isso cria do ponto de vista da escalabilidade?