Retour a la bibliotheque learn
4 questions dans la collection

Starter patterns de code JavaScript

Une collection pratique sur les closures, le raisonnement de type debounce et les patterns de transformation de donnees qui reviennent en coding round.

Concue pour les apprenants qui ont besoin d'un raisonnement JavaScript exploitable en entretien, pas seulement de theorie.
Workspace
Transformer la lecture en vraie boucle d entrainement

L experience learn complete vit dans le workspace : signaux de cours, checkpoints, practice ciblee et renvoi en review.

suivre les cours vus et les resultats de checkpoint
lancer une practice ciblee directement depuis un cours
renvoyer les cours en review espacee

Apercu de la collection

Tu peux inspecter ici la sequence et la couverture des sujets. La boucle guidee complete reste dans le workspace dashboard.

Choix multipleJuniorD1
Quelles affirmations distinguent correctement map, filter et reduce en JavaScript ?

map renvoie une sortie transformee par item d'entree, filter garde seulement les items qui passent un test, et reduce replie la collection vers un resultat accumule unique.

Closures et collections JSPatterns de code JavaScript frontend
Reponse ouverteJuniorD2
Quand une fonction renvoie une autre fonction, pourquoi la fonction interne peut-elle encore lire plus tard les variables de la portee externe ?

La fonction interne ferme sur les variables externes, donc elle garde acces a cet environnement lexical meme apres la fin de l'appel externe.

Closures et collections JSPatterns de code JavaScript frontend
Sketch de codeIntermédiaireD3
Pourquoi un utilitaire debounce garde-t-il souvent timeoutId dans une portee externe, et qu'est-ce que la closure preserve entre les appels ?

La variable externe donne a tous les appels suivants de la fonction renvoyee acces au meme timeoutId, afin de pouvoir effacer le timer precedent avant d'en lancer un autre.

Closures et collections JSPatterns de code JavaScript frontend
Bug huntIntermédiaireD3
Lis le snippet et explique pourquoi l'objet imbrique d'origine change encore alors que l'objet externe a ete copie avec spread.

La copie spread cree bien un nouvel objet externe, mais elle ne clone pas la branche profile imbriquee. La mutation touche encore la reference imbriquee partagee.

Valeurs et references JavaScriptFondamentaux JavaScript frontend