[{"data":1,"prerenderedAt":46},["ShallowReactive",2],{"course-javascript-approfondissement-des-concepts-et-techniques-avancees":3,"highlight-JavaScript-const fetchData = as":45},{"id":4,"name":5,"slug":6,"location":7,"targetAudienceFormatMarkdown":8,"prerequisitesFormatMarkdown":9,"objectivesFormatMarkdown":10,"descriptionFormatMarkdown":11,"teachingMethodsFormatMarkdown":12,"teachingResourcesFormatMarkdown":13,"evaluationMethodsFormatMarkdown":14,"accessibilityFormatMarkdown":15,"accessMethodsFormatMarkdown":16,"minimumParticipants":17,"maximumParticipants":17,"duration":18,"reference":19,"trainerType":7,"updated_at":20,"created_at":21,"price":22,"organizationMode":7,"theme":23,"code":27,"tags":32,"metadata":36},"/api/courses/ef83e9c8-3bc6-4b56-a457-8570d79fe7e1","JavaScript – Approfondissement des concepts et techniques avancées ","javascript-approfondissement-des-concepts-et-techniques-avancees",null,"Développeurs JavaScript souhaitant renforcer leurs compétences avancées.\n\nDéveloppeurs front‑end voulant structurer des applications complexes.\n\nIntégrateurs ou développeurs full‑stack impliqués dans des projets Web avancés.","-   Maîtrise des fondamentaux du langage JavaScript (variables, fonctions, boucles, objets). \n-   Connaissance de base du modèle DOM et des événements dans le navigateur. \n-   Capacité à utiliser un éditeur de code et un navigateur pour le développement Web. ","-   Exploiter des fonctionnalités avancées du langage JavaScript pour écrire un code plus robuste et performant. \n-   Maîtriser les concepts modernes du langage (ES6+) et des patterns avancés de programmation. \n-   Concevoir et structurer des modules, gérer la concurrence et optimiser les performances. \n-   Mettre en œuvre des pratiques avancées de manipulation de données, de modularité et d’architecture applicative. \n-   Appliquer de bonnes pratiques pour écrire du code maintenable et testable. ","--day1--\n\n## Concepts avancés du langage \n\n-   Révision et approfondissement des types avancés de JavaScript. \n-   Compréhension des closures et de l’environnement d’exécution. \n-   Portée des variables, contexte et hoisting. \n-   Fonctions de haut niveau et callbacks. \n-   Atelier pratique : utilisation de closures dans des scénarios concrets. \n\n##   \n\n--break--\n\n## ES6+ et patterns modernes \n\n-   Nouveautés du langage : let/const, classes, destructuration, spread et rest. \n-   Template literals et opérateurs modernes. \n-   Promises, async/await et gestion de l’asynchronisme. \n-   Exercices guidés : transformations de code legacy vers code moderne. \n\n--day2--\n\n## Modularité et architecture du code \n\n-   Organisation du code en modules (ES Modules). \n-   Import/export, bundlers et outils de build (npm, Webpack ou Vite). \n-   Découpage d’une application JavaScript en modules cohérents. \n-   Patterns avancés : IIFE, Modules, Singleton. \n-   Exemples pratiques : structuration modulaire d’un projet. \n\n--break--\n\n## Gestion avancée des données \n\n-   Manipulation de collections avec les méthodes haut niveau (map, filter, reduce). \n-   Objets immuables et bonnes pratiques de transformation d’état. \n-   Utilisation avancée des tableaux et des objets complexes. \n-   Exercices pratiques : traitement de jeux de données complexes. \n\n--day3--\n\n## Concurrence et patterns comportementaux \n\n-   Gestion de la concurrence avec les APIs asynchrones. \n-   Web Workers et exécution hors du fil principal. \n-   Event loop, micro-tâches et macro-tâches. \n-   Optimisation des performances côté client. \n-   Atelier de mise en pratique avec des animations ou calculs asynchrones. \n\n--break--\n\n## Qualité, tests et bonnes pratiques \n\n-   Bonnes pratiques de développement et conventions de code. \n-   Introduction aux tests unitaires avec un outil adapté (par exemple Jest). \n-   Debugging avancé et utilisation d’outils de profiling. \n-   Mise en place d’une stratégie de tests et organisation des suites. \n-   Synthèse des acquis et recommandations pour aller plus loin.","Nos formations, équilibrées entre théorie (50%) et pratique (50%), offrent un apprentissage interactif grâce à des méthodes variées comme les travaux pratiques, les mises en situation et les démonstrations. Des QCM réguliers assurent le suivi des acquis.\n\nVariables suivant les formations, les moyens techniques mis en oeuvre sont :\n\nOrdinateurs Mac ou PC, connexion internet fibre, tableau blanc ou écran (pour le distanciel).\n\nEn cas de formation intra sur site externe à Le Code, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires\n\n(équipements informatiques...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué","Les supports pédagogiques sont remis aux stagiaires sous format numérique et/ou papier selon les modalités de la formation.\n\n  \n\nIls comprennent des supports de cours, des présentations, des fiches pratiques, des études de cas, des exercices applicatifs ainsi que des QCM d’entraînement selon la formation. (adapté au choix du formateur)\n\n  \n\nLes formations s’appuient sur des moyens techniques adaptés : ordinateurs, logiciels professionnels, connexion internet, écran ou vidéoprojecteur, ainsi que des outils collaboratifs et de visioconférence pour les formations à distance.\n\n  \n\nL’ensemble des supports pédagogiques est accessible pendant et après la formation afin de favoriser l’appropriation et la mise en pratique des compétences acquises.","En amont de la formation, un recueil des besoins permet de récolter des informations sur le stagiaire et ses attentes. L’évaluation se fait en cours de formation, par des études de cas ou des travaux pratiques. En fin de formation, par un questionnaire d’auto-évaluation et/ou un examen.\n\nUn suivi de qualité est effectué grâce à nos sessions en groupe restreint (entre 2 et 9 participants maximum). Le stagiaire émargera par demi-journée et recevra une attestation de formation.","Nous informons l'ensemble de nos clients et stagiaires que nous sommes dans la capacité d’adapter les sessions selon les handicaps et les situations spécifiques. Nous nous engageons à répondre à toutes vos demandes sous un délai de 48h\n\nouvré.","Si l’une de nos formations vous intéresse, contactez-nous au +33 4 93 65 34 24 ou à l’adresse mail contact@m2g-intellect.fr. Selon votre besoin et vos attentes, nous organiserons un échange téléphonique avec le formateur pressenti afin d’adapter la\n\nformation et ses modules, puis nous vous adresserons un devis.\n\nLes dates de la formation seront à convenir sous 30 jours maximum.",0,"21.00","JS av","2026-04-23T09:19:00+00:00","2026-04-23T09:14:30+00:00","1950.00",{"id":24,"name":25,"slug":26},"/api/themes/abd712b8-6a6c-4c9b-b382-0aea1eac47d6","Développement Web Frontend","developpement-web-frontend",{"id":28,"label":29,"domain":30},"/api/training_specialities/163","326 - Informatique, traitement de l’information, réseaux de transmission des données",{"label":31},"32 - Communication et information",[33],{"id":34,"name":35},"7732139d-6025-4fde-b145-39298ced3408","MENUFEATURED",{"desc-accroche":37,"Description":38,"icon-color":39,"icon-name":40,"code-langage":41,"code-snippet":42,"courte-description":43,"titre-accroche":44},"Devenez un expert du Web en maîtrisant les concepts critiques de JavaScript moderne : programmation asynchrone (Promises/Async-Await), manipulations complexes du DOM, architecture modulaire ES6+ et gestion de la mémoire.","JavaScript est bien plus qu'un simple langage de script ; c'est le pilier de l'interactivité moderne. Cette formation d'approfondissement s'adresse aux développeurs souhaitant percer les secrets du moteur JS. Vous explorerez en profondeur les fermetures (closures), le contexte (this), et le prototype, tout en adoptant les dernières syntaxes ECMAScript. Un accent majeur est mis sur la maîtrise de l'asynchronisme, la consommation d'APIs et l'optimisation des performances côté client. En comprenant la mécanique interne du langage, vous serez capable d'écrire un code plus propre, plus robuste, et de résoudre les bugs les plus complexes dans vos architectures front-end.","#F7DF1E","mdi:language-javascript","JavaScript","const fetchData = async (url) => {\n\ttry {\n\t\tconst response = await fetch(url);\n\t\tconst data = await response.json();\n\t\treturn data.map(item => ({ ...item, active: true }));\n\t} catch (error) {\n\t\tconsole.error(\"Erreur de récupération:\", error);\n\t}\n};","Approfondissez vos connaissances en JavaScript : maîtrisez l'asynchronisme, les modules ES6 et les concepts avancés pour bâtir des applications web interactives de haut niveau.","Maîtrisez toute la puissance et la flexibilité de JavaScript, le langage moteur du Web, pour créer des applications interactives performantes et scalables.","\u003Cpre class=\"hljs\">\u003Ccode class=\"language-javascript\">\u003Cspan class=\"hljs-keyword\">const\u003C/span> \u003Cspan class=\"hljs-title function_\">fetchData\u003C/span> = \u003Cspan class=\"hljs-keyword\">async\u003C/span> (\u003Cspan class=\"hljs-params\">url\u003C/span>) =&gt; {\n\t\u003Cspan class=\"hljs-keyword\">try\u003C/span> {\n\t\t\u003Cspan class=\"hljs-keyword\">const\u003C/span> response = \u003Cspan class=\"hljs-keyword\">await\u003C/span> \u003Cspan class=\"hljs-title function_\">fetch\u003C/span>(url);\n\t\t\u003Cspan class=\"hljs-keyword\">const\u003C/span> data = \u003Cspan class=\"hljs-keyword\">await\u003C/span> response.\u003Cspan class=\"hljs-title function_\">json\u003C/span>();\n\t\t\u003Cspan class=\"hljs-keyword\">return\u003C/span> data.\u003Cspan class=\"hljs-title function_\">map\u003C/span>(\u003Cspan class=\"hljs-function\">\u003Cspan class=\"hljs-params\">item\u003C/span> =&gt;\u003C/span> ({ ...item, \u003Cspan class=\"hljs-attr\">active\u003C/span>: \u003Cspan class=\"hljs-literal\">true\u003C/span> }));\n\t} \u003Cspan class=\"hljs-keyword\">catch\u003C/span> (error) {\n\t\t\u003Cspan class=\"hljs-variable language_\">console\u003C/span>.\u003Cspan class=\"hljs-title function_\">error\u003C/span>(\u003Cspan class=\"hljs-string\">&quot;Erreur de récupération:&quot;\u003C/span>, error);\n\t}\n};\u003C/code>\u003C/pre>",1781121857074]