Frontend
Reactте компонент кайра рендерделүү учурлары кандай?
// Массивдердин стандарттык ыкмаларын кеңейтүүчү groupBy ыкмасын ишке ашыруу керек. // Бул ыкма массивтин топтолгон версиясын кайтаруусу керек — объект, // анын ачкычтары — fn(arr[i]) чакырылышынын жыйынтыктары, // жана баалуулары — ошол ачкыч менен бардык элементтерди камтыган массивдер. // кодду бул жерге жазыңыз // Мисал 1 const array1 = [ { id: 1 }, { id: 1 }, { id: 2 } ]; const fn = (item) => item.id; console.log(array1.groupBy(fn)); // { // 1: [{ id: 1 }, { id: 1 }], // 2: [{ id: 2 }] // } // Мисал 2 const array2 = [1, 2, 3]; console.log(array2.groupBy(String)); // { // "1": [1], // "2": [2], // "3": [3] // } // Мисал 3 const array3 = [1.3, 0.5, 1.4]; console.log(array3.groupBy(Math.round)); // { // 1: [0.5, 1.4], // 3: [1.3] // }
/* MyRequired түрін жазыңыз — барлық таңдау өрістерін міндетті етеді */ type User = { id?: number name?: string } type MyRequired<T> = { } const user1: MyRequired<User> = { id: 1, name: "John" } const user2: MyRequired<User> = { id: 1 }
Эки абалдуу которгуч үчүн эмне жакшы: toggle же checkbox?
Оптимисттик жаңыртууларды колдондуңузбу? Маалыматтарды фон режиминде жаңыртууда колдользучуга көрсөтмө бердиңизби?
Компаниядан кетүү себебиң эмне болду?
OSI модел эмне? L2, L3, L7 эмне?
Неге биринчи компаниядан кеттиңиз?
Эгер Promise чечилбесе жана rejection болсо, кая ката кетирүү мүмкүн? Then жана catchтен башка эмне бар? Качан finally иштейт?
Аэропорттордо жүргүнчүлөргө кызмат көрсөтүү агенттери үчүн административдик порталдын иштүүлүгү жөнүндө бир аз айтып бере аласызбы?
Кайда useLayoutEffect чакырылат жана ал useEffectтен эмнеге айырмаланат?
Ошол долбоордо кайсы архитектураны, күй менеджерин жана компоненттер китепканасын тандашты жана эмнеге?
Vue 2 менен Vue 3 ортосундагы негизги айырмачылыктар кандай?
Рұқсат берүү менен аутентификациянын айырмасы эмнеде?
Promise жөнүндө айтып бер: бул эмне, абалдар жана статикалык ыкмалар (айрыкча Promise.all жана Promise.race ортосундагы айырма).
/** * 'asyncAuth(callback)' функциясы callback кабыл алат, анын ичинде * ката (биринчи аргумент) жана маалыматтар * бекендден (экинчи аргумент) өткөрүлүшү мүмкүн. * asyncAuth((error, data) => {}); * * Сиз 'auth()' функциясын ишке ашырышыңыз керек, * ал 'asyncAuth()' чакырып, бирок Promise кайтарат. * * @returns {Promise} */ function auth() { return new Promise((resolve, reject) => { asyncAuth((error, data) => { if (error) { reject(error) } else { resolve(data) } }); }) } /** * 'tryAuth()' функциясы 'auth()' колдонуп, ката болсо, * N кошумча аракет кылат. * Бардык аракеттер ийгиликсиз болсо, акыркы катаны кайтарат. * * @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); }); }
Жаңы жумуш ордуңузда эмне менен иштегиңиз келет, келечекте эмне кызыкдарсыз?
Өз тажрыйбаңыз жөнүндө айтып бериңиз: милдеттер, технологиялар, ийгиликтер жана жетишкендиктер үч жарым жылдан ашык Sovcombankта иштегенде.
Акыркы командадагы процесстер жөнүндө айтып бериңиз: спринттер, канбан, пландоо — бул практикада кандай болду?
Дашборддар жөнүндө көбүрөөк айтып бер: метрикалар кайдан алынды, кайсы метрикаларды чогулттыңыз.