¿Qué es una función pura? ¿Cuándo es una función pura? ¿Qué son los efectos secundarios?
Frontend
¿Cómo fue la revisión de código en el equipo? ¿Había un reglamento? ¿En qué se fijaba?
¿Los parámetros en la función se pasan por referencia o por valor?
Cuéntame sobre las etapas críticas del renderizado del navegador
Cuéntame sobre el bucle de eventos: para qué sirve, cómo funciona
Dado el siguiente fragmento de código: ```typescript let info = { name: "Alex", skill: ["git", "react", "read"], }; let started = (info: any) => { let { name, skill } = info; (name = "Alex Pool"), skill.push("delete"); return { name, skill, online: true, }; }; ``` Explica qué hace la función `started` con el objeto `info` y describe la salida de llamar a `started(info)`. Además, discute si el objeto original `info` se muta después de llamar a `started(info)`.
¿Qué es el pseudoarray arguments? ¿En qué se diferencia de un array normal?
¿Qué es la recursión? ¿Cuáles son sus reglas? ¿Para qué sirve?
¿En qué momento se llaman useEffect y useLayoutEffect?
¿Qué es la Reconciliación de React? ¿Cómo funciona? ¿Por qué criterios React decide actualizar o volver a montar un componente?
¿El análisis de HTML y CSS ocurre de manera secuencial o paralela?
Cuéntame sobre ti y tu experiencia laboral
// Promise.resolve() // .then(() => console.log(1)) // // .then(() => console.log(2)) // // Promise.resolve() // .then(() => console.log(11)) // // .then(() => console.log(22)) //
¿Qué cambió en React 18 en el proceso de Reconciliation?
¿Para qué sirve React? ¿Qué problemas resuelve? ¿Cuándo es redundante?
¿Emotion y styled-components generan estilos en tiempo de ejecución, es esto un problema? ¿Cuándo empieza a ser un problema? ¿Cuáles son las alternativas con mejor rendimiento?
función recursiveFunction(N) { let contador = 0; if (N > 0) { contador = contador + 1; recursiveFunction(N - 1); } // console.log(contador) } recursiveFunction(3); // 3 3 3 ? Explica cuál será la salida de la función y por qué. Además, identifica cualquier problema con la implementación actual de la función recursiva y sugiere cómo arreglarla para contar y registrar correctamente el número de llamadas recursivas.
Cuéntame sobre la pila de llamadas: cómo funciona, en qué orden se ejecutan las tareas
import "./styles.css"; import React from "react"; const getData = () => { return Array.from({ length: 50 }, (el, idx) => ({ value: Math.random(), label: `fila ${idx + 1}`, })); }; export default function App() { const [data, setData] = React.useState(getData()); const handleUpdate = () => { setData((prev) => { return prev.map((row, i) => i === 0 ? { ...row, value: Math.random() } : row ); }); }; return ( <div> <h1>Aplicación de Lista</h1> <Button onClick={handleUpdate}>actualizar `fila 1`</Button> {data.map((row) => { return <Row key={row.label} label={row.label} value={row.value} />; })} </div> ); }
¿Cuál será la salida del siguiente fragmento de código? ```javascript setTimeout(() => { console.log('B') }, 0) Promise.resolve().then(() => { console.log('C') }) Promise.resolve().then(() => { console.log('D') }) console.log('E') ```