console.log(foo); var foo = 1; console.log(foo); let foo = 2; console.log(foo); const foo = 3; console.log(foo);
Frontend
Avez-vous de l'expérience avec du code Legacy?
Imaginez la situation : notre productivité diminue à cause d'un problème dans le code JS. Que vérifieriez-vous dans le profileur de DevTools pour confirmer ou infirmer cette hypothèse?
Un tableau de 2 millions d'éléments arrive, chaque élément doit être traité pendant 100 millisecondes. L'interaction avec le serveur ne peut pas être modifiée. Comment traiter ce tableau pour ne pas bloquer l'interface utilisateur?
Comment percevez-vous la critique lors de la revue de code?
Précisez : le déménagement était de JS/JSVue à React et TypeScript, et il est prévu maintenant de passer aux micro-frontends ?
Dans la fonction requestUserData, trois requêtes sont effectuées successivement. Pourquoi ne pas simplement envelopper les trois dans Promise.all ? Comment optimiser cette fonction pour effectuer les requêtes en un minimum de temps ?
Qu'est-ce que le SSR (Rendu côté serveur) ? Pourquoi l'utiliser et qu'est-ce qui est important à considérer lors de la traduction d'une application en SSR ?
Pourquoi n'est-il pas recommandé de stocker des données sensibles dans localStorage?
let a = 5; setTimeout(function timeout() { //macro console.log(a); a = 10; }, 0); let p = Promise.resolve().then(data => { console.log(a); a = 25; resolve(); }).then() console.log(a); // 5 25 25
Avez-vous de l'expérience dans l'écriture de tests?
Pourquoi ne pas faire de chaque composant de l'application un chunk séparé via React.lazy ? Quels problèmes cela pourrait-il causer (avec le rendu, le réseau, la taille du bundle) ?
Il y a une application React compilée en un seul chunk. Comment la diviser en plusieurs chunks et selon quel principe ?
Parle-moi de la boucle d'événements en JavaScript.