


Introduction
Quand j'ai démarré ce projet, mon objectif était simple : créer une application de collection de Pokémon où les utilisateurs pourraient explorer les Pokémon et leurs détails. En combinant JavaScript, Node.js et des données locales, j'ai créé une application interactive qui permet aux utilisateurs de visualiser les images, les capacités et les types de Pokémon, tout en affinant mes compétences avec les auditeurs d'événements, les mises à jour de contenu dynamiques, et bien plus encore. Pendant que j'y travaille avec un partenaire, je vais me concentrer spécifiquement sur mon travail. Voici comment tout cela s’est déroulé !
Aperçu du projet
Cette application est conçue pour présenter une collection d'images et de statistiques Pokémon, permettant aux utilisateurs de cliquer facilement sur chaque Pokémon pour afficher les détails et basculer entre les images principales et alternatives avec des interactions de survol. J'ai diffusé les données Pokémon localement, ce qui m'a permis de me concentrer sur la façon de restituer, de mettre à jour et d'interagir avec les données au sein de l'application elle-même.
Configuration des données locales avec db.json
Au lieu d'extraire d'une API externe, j'ai créé un fichier db.json local avec des données Pokémon, y compris des attributs tels que le nom, le type, la capacité et les chemins d'image. En exécutant un serveur local sur http://localhost:3500/pokemon, j'ai pu récupérer ces données en utilisant la méthode fetch en JavaScript. La configuration simplifiée m'a permis de créer et de tester l'application entièrement hors ligne.
Procédure pas à pas du code
Voici un aperçu de la façon dont j’ai abordé les éléments clés du projet.
- Récupération de données : La première étape consistait à récupérer les données Pokémon du serveur local. J'ai créé une fonction getAllPokemon pour gérer la demande de récupération et renvoyer les détails du Pokémon au format JSON.
function getAllPokemon() { return fetch(pokemonURL).then(response => response.json()); }
Cette fonction extrait les données Pokémon de http://localhost:3500/pokemon, que j'utilise ensuite pour restituer dynamiquement chaque Pokémon.
- Affichage des Pokémon : Pour remplir la collection, j'ai utilisé une fonction displayPokemons qui parcourt les données Pokémon récupérées et restitue chaque élément sous forme d'image. J'ai également ajouté un écouteur d'événement de clic sur chaque image, qui ouvre les détails du Pokémon une fois sélectionné :
const displayPokemons = () => { getAllPokemon().then(pokemonArr => { pokemonArr.forEach(renderPokemon); handleClick(pokemonArr[0]); // Display first Pokémon by default }); }
La fonction renderPokemon crée une image pour chaque Pokémon, ajoute un style et attache un événement de clic pour afficher les détails.
- Écouteurs d'événements : ajout d'interactivité J'ai utilisé deux principaux types d'écouteurs d'événements dans ce projet : un écouteur de soumission de formulaire pour ajouter de nouveaux Pokémon et des événements de survol/de sortie de souris pour basculer entre les images. Ces auditeurs ont rendu l'application plus attrayante et conviviale.
-
Soumission du formulaire :
Pour ajouter un nouveau Pokémon, j'ai configuré un écouteur de soumission sur le formulaire, qui rassemble les valeurs des champs de saisie et ajoute le nouveau Pokémon à la collection. Ce nouveau Pokémon est rendu sans avoir besoin de rafraîchir la page :
function getAllPokemon() { return fetch(pokemonURL).then(response => response.json()); }
Ici, event.preventDefault() empêche le formulaire de recharger la page, garantissant une expérience utilisateur fluide.
-
Événement de survol pour les images alternatives :
Lorsque les utilisateurs survolent l’image du Pokémon dans la section détails, celle-ci passe à une image alternative, simulant une évolution ou une transformation. L'événement mouseover déclenche ce commutateur, tandis que mouseout le rétablit :
const displayPokemons = () => { getAllPokemon().then(pokemonArr => { pokemonArr.forEach(renderPokemon); handleClick(pokemonArr[0]); // Display first Pokémon by default }); }
Cet effet offre aux utilisateurs une façon amusante d'interagir avec chaque Pokémon et d'explorer visuellement ses caractéristiques.
Défis et points d’apprentissage
L'un des défis consistait à structurer le JavaScript pour qu'il reste modulaire et gérable, car les écouteurs d'événements et les éléments dynamiques peuvent rapidement devenir difficiles à suivre. J'ai appris à compartimenter mon code en fonctions plus petites et à utiliser les écouteurs d'événements de manière sélective pour optimiser les performances et la lisibilité.
Conclusion
Ce projet de collection Pokémon était une façon passionnante d'appliquer JavaScript, d'expérimenter la récupération de données locales et d'ajouter une interactivité attrayante basée sur des événements. Créer cette application à partir de zéro m'a donné une expérience précieuse avec les concepts front-end et back-end, ce qui m'a inspiré pour explorer des projets plus interactifs à l'avenir.
Découvrez mon projet sur GitHub ! :
https://github.com/kelseyroche/phase-1-project-pokemon
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Le choix de Python ou JavaScript doit être basé sur le développement de carrière, la courbe d'apprentissage et l'écosystème: 1) le développement de carrière: Python convient à la science des données et au développement de back-end, tandis que JavaScript convient au développement frontal et complet. 2) Courbe d'apprentissage: la syntaxe Python est concise et adaptée aux débutants; La syntaxe JavaScript est flexible. 3) Ecosystème: Python possède de riches bibliothèques informatiques scientifiques, et JavaScript a un puissant cadre frontal.

La puissance du cadre JavaScript réside dans la simplification du développement, l'amélioration de l'expérience utilisateur et les performances des applications. Lorsque vous choisissez un cadre, considérez: 1. Taille et complexité du projet, 2. Expérience d'équipe, 3. Écosystème et soutien communautaire.

INTRODUCTION Je sais que vous pouvez le trouver étrange, que doit faire exactement JavaScript, C et Browser? Ils semblent sans rapport, mais en fait, ils jouent un rôle très important dans le développement Web moderne. Aujourd'hui, nous discuterons du lien étroit entre ces trois. Grâce à cet article, vous apprendrez comment JavaScript fonctionne dans le navigateur, le rôle de C dans le moteur du navigateur et comment ils fonctionnent ensemble pour stimuler le rendu et l'interaction des pages Web. Nous connaissons tous la relation entre JavaScript et Browser. JavaScript est la langue principale du développement frontal. Il fonctionne directement dans le navigateur, rendant les pages Web vives et intéressantes. Vous êtes-vous déjà demandé pourquoi javascr

Node.js excelle dans des E / S efficaces, en grande partie grâce aux flux. Streams traite les données progressivement, en évitant la surcharge de mémoire - idéal pour les fichiers volumineux, les tâches réseau et les applications en temps réel. Combiner les flux avec la sécurité de type dactylographié crée un powe

Les différences de performance et d'efficacité entre Python et JavaScript se reflètent principalement dans: 1) comme un langage interprété, Python fonctionne lentement mais a une efficacité de développement élevée et convient au développement rapide des prototypes; 2) JavaScript est limité au thread unique dans le navigateur, mais les E / S multi-threading et asynchrones peuvent être utilisées pour améliorer les performances dans Node.js, et les deux ont des avantages dans les projets réels.

JavaScript est originaire de 1995 et a été créé par Brandon Ike, et a réalisé que la langue en langue C. 1.C offre des capacités de programmation élevées et au niveau du système pour JavaScript. 2. La gestion de la mémoire de JavaScript et l'optimisation des performances reposent sur le langage C. 3. La fonctionnalité multiplateforme du langage C aide JavaScript à s'exécuter efficacement sur différents systèmes d'exploitation.

JavaScript s'exécute dans les navigateurs et les environnements Node.js et s'appuie sur le moteur JavaScript pour analyser et exécuter du code. 1) Générer une arborescence de syntaxe abstraite (AST) au stade d'analyse; 2) Convertir AST en bytecode ou code machine à l'étape de compilation; 3) Exécutez le code compilé à l'étape d'exécution.

Les tendances futures de Python et JavaScript incluent: 1. Python consolidera sa position dans les domaines de l'informatique scientifique et de l'IA, 2. JavaScript favorisera le développement de la technologie Web, 3. Le développement de plate-forme multiplié deviendra un sujet brûlant, et 4. L'optimisation des performances sera le focus. Les deux continueront d'étendre les scénarios d'application dans leurs champs respectifs et de faire plus de percées dans les performances.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

MantisBT
Mantis est un outil Web de suivi des défauts facile à déployer, conçu pour faciliter le suivi des défauts des produits. Cela nécessite PHP, MySQL et un serveur Web. Découvrez nos services de démonstration et d'hébergement.

Version crackée d'EditPlus en chinois
Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

Version Mac de WebStorm
Outils de développement JavaScript utiles

Navigateur d'examen sécurisé
Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.
