Comment peut-on savoir s'il y a des problèmes avec le formulaire en production, s'il cesse de fonctionner (par exemple, ne pas compléter l'inscription) ?
Frontend
La métrique TTFB (Time To First Byte) — comment peut-elle diminuer lors du SSR, quelle est la nature des baisses et comment peut-on l'améliorer ? Décrivez ce qui se passe du moment où vous appuyez sur Entrée jusqu'à ce que quelque chose apparaisse à l'écran.
fonction promiseWithResolve() { // Non implémenté } const { resolve, promise } = promiseWithResolve(); promise.then((v) => console.log(v)) setTimeout(() => resolve(13), 10)
Implémentez la fonction callLimit, qui limite le nombre d'appels de la fonction passée à une limite donnée, et fournit également la méthode reset pour réinitialiser le compteur.
Il faut écrire une fonction sum qui, lorsqu'elle est appelée avec un argument, accumule un nombre, et lorsqu'elle est appelée sans argument, retourne le nombre accumulé. Par exemple : sum(2)(1)(2)() doit retourner 5.
Imaginez une situation : juste avant la sortie, vous trouvez un bug qui empêche une fonctionnalité de fonctionner correctement. La sortie ne peut pas être reportée, mais vous savez que quelque chose ne fonctionne pas correctement. Que feriez-vous dans cette situation ?
L'utilisateur a appuyé sur un bouton, un grand ensemble de données est arrivé du backend, et l'écran a gelé. Qu'est-ce qui aurait pu causer cela et comment résoudre le problème?
Implémentez la typification en TypeScript pour valider les URL, en autorisant uniquement les URL correctes de la forme suivante : domaine de base + chemin (users/orders/messages) + méthode (get/update/delete/ban). Les chaînes arbitraires doivent provoquer une erreur de compilation.
Supposons que nous avons une boutique en ligne où une liste de 50 produits est affichée avec pagination. Lorsqu'un utilisateur passe à la deuxième page, surtout sur un téléphone, il voit longtemps des carrés blancs au lieu des images. Comment faire pour que les images apparaissent plus rapidement?
As-tu déjà travaillé avec CI/CD, peut-être en créant des conteneurs Docker ou en configurant des pipelines?
export function foo(o, arr) { return arr.reduce((a, x) => { // si (o.hasOwnProperty(x)) a[x] = o[x]; if (o[x]) a[x] = o[x]; return a; }, {}); } const obj = {a: 's'} foo(obj, ['a'])
Supposons que nous voyons que les styles prennent beaucoup de temps à charger chaque fois qu'un utilisateur accède au site ou actualise la page. Rendre le CSS critique est difficile. Que faut-il vérifier précisément en ce qui concerne le CSS et tout contenu statique en général?
Comprends ce que fait ce code et comment il peut être utilisé. Il existe un helper similaire dans lodash — si tu le reconnais, tu peux simplement donner son nom.
Assurez-vous que le composant UserName affiche le nouveau nom d'utilisateur après la soumission réussie du formulaire.
Avez-vous travaillé avec SSR ? Quelles tâches effectuiez-vous — SSR, SSG ou simplement Next.js ?
Comment obtenir des données de l'API dans un thunk, en tenant compte du fait que l'API est passée en tant qu'argument supplémentaire dans le middleware thunk?
Un utilisateur se plaint que le bouton ne répond parfois pas, mais le problème ne se reproduit pas localement. Quelles sont vos étapes de débogage ? Quelles peuvent être les causes ?
Qu'est-ce qui peut bloquer le processus d'analyse HTML?
Comment fonctionne la boucle d'événements ? Quelles sont les files d'attente et dans quel ordre sont-elles exécutées ? Parlez des micro-tâches, macro-tâches, requestAnimationFrame, requestIdleCallback.
Avez-vous entendu parler de Web Vitals et en particulier de la métrique FCP ? Racontez ce que vous savez sur les métriques Web Vitals.