Avez-vous écrit des tests ? Lesquels précisément ?
Frontend
Comment les tâches arrivaient-elles dans l'équipe ? Y avait-il un cahier des charges ou les tâches étaient-elles décrites oralement ? Pouvez-vous donner un exemple de tâche ?
Qu'aimez-vous dans votre travail et qu'est-ce qui ne vous plaît pas ou vous dérange?
Avec quels gestionnaires d'état avez-vous interagi et pourquoi Effector a-t-il été choisi pour le dernier projet?
Avez-vous des questions sur le produit, l'équipe ou les processus?
Dites-moi ce que vous savez sur l'Event Loop, qu'est-ce que c'est et à quoi ça sert?
Que savez-vous du contexte et du mot-clé this?
Avez-vous déjà dû travailler sans maquettes ? Comment percevez-vous les tâches à réaliser sans maquettes ?
Parlez-moi des mois de travail actuels : quel est le produit, avec qui avez-vous travaillé, comment était l'équipe ?
Que savez-vous du ramasse-miettes en JavaScript ? Qu'est-ce qu'une fuite de mémoire et dans quels cas peuvent-elles se produire ?
class Foo { bar = 1; bla = () => console.log(this.bar); baz = function () {console.log(this.bar);}; } new Foo().bla(); new Foo().baz(); Disons-le simplement: `this` n'est pas une portée, mais le contexte d'appel de la fonction. Il est déterminé non pas où la fonction est déclarée, mais comment elle est appelée. On peut ajouter 3-4 règles: - Appel normal d'une fonction — `this` est généralement undefined en mode strict. - Méthode d'un objet — `this` pointe vers l'objet à gauche du point. - call / apply / bind — permettent de définir explicitement `this`. - Fonctions fléchées — n'ont pas leur propre `this`, elles prennent celui du contexte extérieur.
Dans quelle mesure êtes-vous prêt à revenir à une tâche précédente après avoir découvert des défauts lors des tests ? Comment gérez-vous les changements fréquents de contexte ?
class Foo { bar = 1; bla = () => console.log(this.bar); baz = function () {console.log(this.bar);}; } new Foo().bla(); new Foo().baz(); Dites-le simplement ainsi : `this` n'est pas une portée, mais le contexte d'appel de la fonction. Il est défini non pas là où la fonction est déclarée, mais là où elle est appelée. On peut ajouter 3-4 règles : - Appel normal d'une fonction — `this` est généralement undefined en mode strict. - Méthode d'un objet — `this` indique l'objet à gauche du point. - `call / apply / bind` — permettent de définir explicitement `this`. - Fonctions fléchées — n'ont pas leur propre `this`, elles prennent celui du contexte extérieur.
À quoi servent useMemo et useCallback ? Est-il toujours judicieux de les utiliser ?
Expérience avec les micro-frontends?
Quel gestionnaire d'état a été utilisé dans le projet ? Redux, MobX ou autre chose ?
Dans quels cas un composant React se rerend-il?
console.log("foo"); setTimeout(() => { console.log("bar"); }, 0); queueMicrotask(() => { console.log("baz"); Promise.resolve() .then(() => console.log("ban")); }); new Promise((resolve) => { console.log("bla"); resolve("baf"); }).then(console.log); console.log("bak"); //// foo bla bak baz baf ban bar