Napište funkci, která vypočítá medián pole čísel.
Frontend
Pověz mi o E2E testování s Playwright: jak byl systém testování uspořádán, jak byl spuštěn, jak spolupracoval s backendem, jak dosahovali reprodukovatelnosti testovacích dat?
Revize přiřazení role uživateli Vue 2 ```javascript export default { data() { return { user: { name: 'Ivan' } }; }, methods: { setRole(role) { this.user.role = role; } } } ```
Existuje pole s 200 ID. Pro každý je třeba zavolat /api/users/:id. Napiš funkci, která provádí požadavky, ale ne více než N najednou, a vrací výsledky v pořadí vstupního pole.
Recenze mixinu Nuxt 2 pro detekci zařízení ```javascript export default { data() { return { isMobile: window.innerWidth < 768 } } } ```
Jaké zajímavé případy nebo nestandardní situace jste zažili při práci s Playwright?
Jak lze cacheovat stránky/odpovědi v aplikaci Nuxt pro snížení zátěže? Pracoval jste s Redis nebo Nitro-cache?
Jaké mohou být příčiny dlouhé bílé obrazovky při SSR (Nuxt)? Jak diagnostikovat a řešit problém s vysokým Time to First Byte?
Pověz o přechodu z Vue 2 na Vue 3: co se změnilo (VueX na Pinia, Options API na Composition API, Vue.extend na defineComponent, new Vue na createApp atd.)?
Pověz mi o optimalizaci výkonu stránek v Nuxt: s čím jsi se setkal, jaké problémy jsi řešil a jak.
async function loadUsers(ids) { const users = [] ids.forEach(async id => { const res = await fetch(`/api/users/${id}`) const user = await res.json() users.push(user) }) return users } Identify the problem with this code and suggest how to fix it.
funkce debounce(fn, delay) { let timer return function (...args) { clearTimeout(timer) timer = setTimeout(() => fn(args), delay) } }
Přehled Nuxt mixinu 2 - posluchač změny velikosti ```javascript export default { data() { return { width: 0 } }, mounted() { window.addEventListener('resize', this.onResize) this.onResize() }, methods: { onResize() { this.width = window.innerWidth } } } ```
Pověz o buildovači při přechodu z Vue 2 na Vue 3: byl Webpack (Vue CLI), nyní Vite. Byly nějaké zajímavé corner-case, konflikty konfigurací nebo věci, které bylo třeba přepsat?