Вижте този парче код — разберете какво прави и напишете прост пример за използване. В lodash има и подобен помощник.
Frontend
Работил ли си някога с Lighthouse? Представи си, че ти възлагат задачата да подобриш метриката FCP (First Contentful Paint). Какви идеи ти идват на ум?
Какви проблеми има в текущия подход към SSR Data Loading и как ще се разрастват при добавяне на нови страници?
const customMap = (array, transform) => { // нещо като array.map(transform); }; const stringResults = customMap([1, 2, 3], item => item.toString()); const lengths = customMap(["здравей", "свят"], item => item.length);
Реализирайте функция foo, която приема масив и връща обект, където ключовете са елементите на масива, а стойностите са всички 0.
Как се развивате, как учите нови технологии, какво ви остана последно в паметта?
Какво ви харесва най-много да правите на работното място и какво не толкова? Какво отнема повече време, отколкото бихте искали?
Разкажете за последното си работно място и проектите, по които сте работили.
Как да осигурим поддръжка на съвременните формати за изображения (WebP, AVIF) в браузъри, които не ги поддържат?
Какво интересно и ново научи напоследък в света на фронтенда?
В кой момент ще съобщиш, че не успяваш?
Каква е разликата между използването на hasOwnProperty и директната проверка на стойността чрез условие (if o[x])? Какво ще се случи, ако стойността на свойството е false?
Какво може да се случи на сървъра при генериране на HTML (SSR) — на какво време харчи сървърът, какви могат да бъдат проблемите с производителността и сигурността при сериализирането на данни?
Определете реда на изход в конзолата за кода с setTimeout, Promise, then, catch, finally и различни синхронни извиквания (задача за Event Loop).
Какви подобрения могат да бъдат направени за подобряване на качеството на продукта в бъдеще?
Има функция customMap, която прави почти същото като обикновената map функция на масив, но тя не е типизирана. Трябва да я типизираме така, че на петия ред да е масив от низове, а на седмия — масив от числа.
За какво е нужен React.lazy? Каква полза носи и как работи под капака?
Реализирайте функцията memoize, която кешира резултатите от извикванията на асинхронни функции и не изпраща повторни заявки, ако извикването с едни и същи аргументи вече е било направено.
<script> function sum(valueA) { throw 'Не е реализирано' } console.log(sum(1)()); // 1 console.log(sum(1)(2)()); // 3 console.log(sum(1)(2)(-3)()); // 0 </script>
Знаеш ли какво е метриката FCP (First Contentful Paint)? Да предположим, че имаме React приложение — социална мрежа с рендиране на сървъра, и има проблем: когато потребител влезе директно в профил, бял екран остава дълго време. Можеш ли да опишеш стъпките — какво се случва от момента, в който потребителят натисне Enter, до появата на първото съдържание?