Frontend
/** * Funkce 'asyncAuth(callback)' přijímá callback, do kterého * může být předána chyba (jako první argument) a data * ze serveru (jako druhý argument). * asyncAuth((error, data) => {}); * * Musíte implementovat funkci 'auth()', * která volá 'asyncAuth()', ale vrací Promise. * * @returns {Promise} */ function auth() { return new Promise((resolve, reject) => { asyncAuth((error, data) => { if (error) { reject(error) } else { resolve(data) } }); }) } /** * Funkce 'tryAuth()' používá 'auth()' a v případě chyby * provádí N dalších pokusů. * Pokud všechny selžou, vrátí poslední chybu. * * @returns {Promise} */ function tryAuth(n) { return new Promise((resolve, reject) => { function attempt(attemptsLeft) { auth().then(resolve).catch((error) => { if (attemptsLeft <= 0) { reject(error); } else { attempt(attemptsLeft - 1); } }); } attempt(n); }); }
Znáš atribut SameSite u cookies? Jaké jsou jeho hodnoty a v čem se liší?
Jaké typy Subject existují v RxJS?
Pověz mi podrobněji o své zkušenosti s Feature-Sliced Design (FSD): jaké vrstvy jsi implementoval, bylo to pohodlné nebo ne, jaké problémy se vyskytly?
Jak funguje syntaxe async/await v JavaScriptu a jaké má výhody oproti tradiční syntaxi založené na promise?
Jaký je rozdíl mezi hooky useEffect a useLayoutEffect?
Pověz o architektonických přístupech: FSD, modulární monolit. Jakou architekturu zvolit pro malé MVP?
Proč se Vue 3 vzdalo mixinů?
Musel jsi někdy pracovat s CI/CD, něco nastavovat?
To znamená, že jsi za ním chodil, nějak jste popisovali smlouvy?
Jak moc jste pracoval s CSS? Znáte Grid Layout?
Co se stane, když má useEffect dvě závislosti a jedna z nich se změní?
Jaké typy inputů existují?
Proč je React knihovna a ne rámec?
V čem byly úkoly hodnoceny — v story pointách nebo podle času?
Může se stát, že dvě různé hodnoty budou mít stejný hash (kolize)? Jak se to řeší?
const X = { a: 1, b: 2, c: 3, d: 4 } function getProperty<T>(obj: T, key: keyof T) { // Úkol: typovat funkci return obj[key] } getProperty(X, 'a') // žádná chyba getProperty(X, 'e') // chyba: klíč 'e' není klíčem objektu X getProperty({ name: 'Sergey' }, 'name') // žádná chyba getProperty(1, 1) // Chyba. První argument musí být objekt (ne funkce ani primitivní typ)
Co je Saga a Transactional Outbox? Proč jsou potřeba distribuované transakce?
Povězte mi o svém posledním zaměstnání — jaké byly vaše úkoly, vaše oblast odpovědnosti, jaké vznikly potíže a jaké výsledky můžete zmínit?
Co je to git cherry-pick a jak funguje?