Apprendre la programmation javascript epub. Apprentissage de la programmation JavaScript



Êtes-vous prêt à faire évoluer votre développement Web de la mise en page HTML et CSS à la création de pages entièrement dynamiques ? Alors il est temps de se familiariser avec le langage de programmation "le plus en vogue" - JavaScript !
Avec ce livre, vous apprendrez tout sur le langage JavaScript, des variables aux boucles. Vous comprendrez pourquoi différents navigateurs réagissent différemment au code et comment écrire un code universel pris en charge par tous les navigateurs. Vous comprendrez pourquoi, avec le code JavaScript, vous n'aurez jamais à vous soucier de la congestion des pages et des erreurs de transfert de données. Ne soyez pas intimidé, même si vous n'avez pas écrit une seule ligne de code auparavant - grâce au format de présentation unique, ce livre vous guidera facilement tout au long du parcours d'apprentissage : de l'écriture d'un simple script à la création de projets Web complexes qui fonctionnera dans tous navigateurs modernes.
Cette édition présente une manière unique de présenter le matériel qui fait que la série "Head First" d'O'Reilly se démarque de la foule des livres de programmation ennuyeux.

Dans des eaux inconnues

première rencontre avec javascript

JavaScript ouvre des possibilités fantastiques. JavaScript, le principal langage de programmation World Wide Web, vous permet de définir un comportement étendu dans les pages Web. Oubliez les pages sèches, ennuyeuses et statiques qui ne prennent que de l'espace à l'écran - avec JavaScript, vous
interagir avec les utilisateurs, répondre aux événements, recevoir et utiliser des données d'Internet, afficher des graphiques ... et bien plus encore. À bonne connaissance JavaScript, vous pouvez même programmer des comportements complètement nouveaux sur vos pages.

Et n'hésitez pas, vos connaissances seront recherchées. Désormais, JavaScript n'est pas seulement l'un des langages de programmation les plus populaires, mais il est pris en charge par tous les navigateurs modernes (et de nombreux navigateurs non modernes); de plus, des implémentations JavaScript intégrées sont apparues qui existent séparément des navigateurs. Quoi qu'il en soit, assez parlé. Il est temps de se mettre au travail !

Fonctionnement de JavaScript 38
Comment écrire du code JavaScript 39
Comment inclure du code JavaScript dans la page 40
JavaScript tu l'as fait un long chemin, bébé ... 42
Comment les équipes sont créées 46
Variables et valeurs 47
Attention aux mots-clés ! 48
Attention aux expressions ! 51
Opérations répétées 53
Comment fonctionne la boucle while 54
Prise de décision en JavaScript 58
Et si vous avez BEAUCOUP de décisions à prendre... 59
Engager l'utilisateur à la page 61
Se familiariser avec console.log 63
Comment ouvrir la console 64
Écrire une application sérieuse en JavaScript 65
Comment ajouter du code à une page ? (chemins de comptage) 68
Balisage et code : les chemins divergent 69

La prochaine étape

code réel

Vous savez déjà ce que sont les variables, les types, les expressions… et ainsi de suite. Vous savez déjà quelque chose sur JavaScript. De plus, les connaissances sont suffisantes pour commencer à écrire de vrais programmes qui font quelque chose d'intéressant que quelqu'un utilisera. Certes, vous n'avez pas assez d'expérience pratique dans l'écriture de code, et nous allons commencer à résoudre ce problème dès maintenant. Comment? Commençons simplement à écrire un jeu simple, entièrement implémenté en JavaScript. La tâche est de grande envergure, mais nous avancerons progressivement vers l'objectif, étape par étape. Alors, passons aux choses sérieuses, et si vous souhaitez soudainement utiliser notre développement dans vos projets - cela ne nous dérange pas, débarrassez-vous du code comme bon vous semble.

Des fonctionnalités pour tous

connaissance des fonctions

Dans ce chapitre, vous maîtriserez votre première super capacité. Vous savez déjà une ou deux choses sur la programmation ; il est temps de passer à l'étape suivante et de se familiariser avec les fonctions. Les fonctions vous permettent d'écrire du code qui peut être réutilisé dans différentes situations ; un code nettement plus facile à maintenir ; code qui peut être abstrait et donné un nom simple afin que vous puissiez oublier les détails banals et vous concentrer sur les choses qui comptent vraiment. Vous verrez que les fonctions ouvrent non seulement la voie aux prouesses du programmeur, mais jouent également un rôle clé dans le style de programmation JavaScript. Dans ce chapitre, nous commencerons par les bases : les mécanismes et les subtilités du fonctionnement des fonctions, puis nous affinerons vos compétences avec les fonctions dans le reste du livre. Commençons donc par les bases... dès maintenant.

mettre les choses en ordre

JavaScript peut fonctionner avec plus que des nombres, des chaînes et des booléens. Jusqu'à présent, nous avons travaillé exclusivement avec des primitives - des chaînes simples, des nombres et des booléens (par exemple, "Fido", 23 et vrai). Beaucoup peut être fait avec les types primitifs, mais à un moment donné, vous aurez besoin de données riches pour représenter tous les articles d'un panier, toutes les chansons d'une liste de lecture, un groupe d'étoiles et leurs magnitudes, ou un catalogue de produits entier. De telles tâches nécessitent des fonds plus sérieux. Un outil typique pour représenter de telles données homogènes est un tableau JavaScript. Dans ce chapitre, vous apprendrez à placer des données dans un tableau, à les transférer et à les utiliser. Les chapitres suivants exploreront d'autres manières de structurer les données, mais nous commencerons par les tableaux.

Voyage à Objectville

rencontrer: objets

Jusqu'à présent, nous avons utilisé des primitives et des tableaux. Et il utilisait une méthodologie de programmation procédurale avec des commandes simples, des conditions, des boucles for/while et des fonctions. Cette approche était loin des principes de la programmation orientée objet. En fait, cela n'avait rien à voir avec la programmation orientée objet. Nous avons utilisé des objets de temps en temps (et vous ne le saviez même pas), mais nous n'en avons pas encore écrit. Il est temps de quitter la ville procédurale ennuyeuse et de commencer à créer vos propres objets.
Dans ce chapitre, vous apprendrez pourquoi les objets améliorent grandement nos vies - du moins dans le domaine de la programmation. Alors sachez ceci : une fois que vous vous serez habitué aux objets, vous ne voudrez plus revenir en arrière. Oh, et n'oubliez pas d'envoyer une carte postale lorsque vous vous installerez.

Modèle DOM

interactions avec les pages Web

Vous avez fait des progrès significatifs dans l'apprentissage de JavaScript. En fait, vous êtes passé d'un débutant à l'écriture de scripts à… un programmeur. Cependant, il manque quelque chose : pour utiliser pleinement vos compétences en JavaScript, vous devez être capable d'interagir avec une page Web dans laquelle
votre code est localisé. Ce n'est que dans ce cas que vous pourrez écrire des pages dynamiques qui répondent aux actions de l'utilisateur et sont mises à jour après le chargement. Comment interagir avec la page ? Via le modèle d'objet de document DOM (Document Object Model). Dans ce chapitre, nous examinerons le DOM et principes généraux travailler avec ce modèle de JavaScript pour améliorer les capacités de la page.

Types sérieux

types, égalité, conversions et tout ça

Il est temps de devenir sérieux au sujet des types. L'un des avantages de JavaScript est qu'un débutant peut aller assez loin sans avoir à se plonger dans les détails du langage. Mais pour vraiment maîtriser la langue, être promu au travail et entrer dans ce qui vaut vraiment la peine d'être fait, vous devez être doué pour les types. Vous souvenez-vous de ce que nous avons dit à propos de JavaScript - qu'il n'avait pas le luxe d'une définition académique révisée par des pairs ? Oui, c'est vrai, mais le manque de fondation académique n'a pas arrêté Steve Jobs et Bill Gates ; il n'a pas non plus interféré avec JavaScript. Cela signifie que le système de type de JavaScript est... eh bien, disons simplement que ce n'est pas le plus réfléchi, et qu'il contient de nombreuses bizarreries. Mais ne vous inquiétez pas, dans ce chapitre, nous couvrirons tout, et bientôt vous apprendrez à
contourner tous ces moments désagréables avec les types.

Construire l'application

ensemble

Préparez vos outils pour le travail. Oui, votre boîte à outils est constituée de vos nouvelles compétences en programmation, de votre connaissance du DOM et même de quelques connaissances en HTML et CSS. Dans ce chapitre, nous allons tout rassembler pour créer notre première application Web complète. Jeux assez primitifs avec un navire, qui est placé sur une seule ligne. Dans ce chapitre, nous allons construire version complète: grand terrain de jeu, plusieurs navires, saisie de l'utilisateur directement sur la page web. Nous allons créer la structure de la page de jeu dans le balisage HTML, appliquer un style visuel avec CSS et écrire le code JavaScript qui définit le comportement du jeu. Préparez-vous : dans ce chapitre, nous allons faire de la programmation sérieuse et écrire du code assez sérieux.

Gestion des événements

programmation asynchrone

Dans ce chapitre, vous devrez gravir fondamentalement nouveau niveau. Jusqu'à présent, nous avons écrit du code qui est généralement exécuté de haut en bas. Bien sûr, il utilisait des fonctions, des objets et des méthodes, mais l'exécution suivait une voie prédéterminée. Il est dommage que nous devions rapporter de telles nouvelles dans la seconde moitié du livre, mais cette structure de code n'est pas typique de JavaScript. La plupart du code JavaScript est écrit pour gérer les événements. Quels événements ? Oui, n'importe lequel. Un utilisateur clique sur une page, des données proviennent du web, un timer se déclenche dans le navigateur, des changements se produisent dans le DOM… Loin de là. liste complète. De plus, des événements se produisent constamment dans le navigateur et passent largement inaperçus. Dans ce chapitre, nous allons repenser notre approche de la programmation et apprendre pourquoi nous devons écrire du code qui répond aux événements.

Fonctions sans limites

fonctionnalités de premier ordre

Explorez les fonctionnalités et brillez. Dans chaque métier, art et discipline, il existe un principe clé qui sépare les joueurs "de niveau intermédiaire" des vrais pros - et lorsqu'il s'agit de JavaScript, une bonne compréhension des fonctions est la marque du professionnalisme. Les fonctions jouent un rôle fondamental dans JavaScript, et de nombreuses techniques utilisées dans la conception et l'organisation du code sont basées sur une bonne connaissance des fonctions et la capacité de les utiliser. La façon d'apprendre les fonctionnalités sur ce
est intéressant et stimulant, alors préparez-vous... Ce chapitre est un peu comme une visite de la chocolaterie de Willy Wonka - vous verrez beaucoup de choses étranges, folles et merveilleuses tout en découvrant les fonctions JavaScript.

Caractéristiques sérieuses

fonctions anonymes, portée et fermetures

Nous avons beaucoup appris sur les fonctions, mais ce n'est pas tout. Dans ce chapitre, nous allons aller plus loin et comprendre les sujets que les professionnels traitent habituellement. Vous apprendrez à travailler efficacement avec les fonctions. Le chapitre ne sera pas trop long, mais il sera assez intense, donc à la fin du chapitre, votre code JavaScript sera plus expressif que prévu. Vous serez également prêt à entreprendre l'analyse de code d'un collègue ou à explorer une bibliothèque JavaScript open source, car nous apprendrons également certains idiomes et conventions courants concernant l'utilisation des fonctions. Et si vous n'avez jamais entendu parler de fonctions et de fermetures anonymes, c'est ici qu'il faut commencer !

Création d'objets

création d'objets non triviaux

Jusqu'à présent, nous avons créé des objets manuellement. Pour chaque objet, un littéral d'objet a été utilisé, qui définit toutes les propriétés sans exception. Pour les petits programmes, cela est acceptable, mais pour
le code sérieux aura besoin de quelque chose de mieux, à savoir des constructeurs d'objets. Les constructeurs facilitent la création d'objets et vous pouvez créer des objets à partir d'un seul modèle - en d'autres termes, les constructeurs vous permettent de créer une série d'objets qui ont les mêmes propriétés et contiennent les mêmes méthodes. Le code écrit à l'aide de constructeurs est beaucoup plus compact et réduit le risque d'erreurs lors de la création d'un grand nombre d'objets. Nous vous assurons qu'après avoir étudié ce chapitre, vous utiliserez les constructeurs comme si vous aviez fait cela toute votre vie d'adulte.

objets forts

utilisation de prototypes

Apprendre à créer des objets n'est que le début. Il est temps de "développer vos muscles" - découvrez des outils avancés pour définir les relations entre les objets et les organiser partage code. De plus, nous aurons besoin de mécanismes pour étendre les objets existants. En d'autres termes, nous avons besoin
élargissez votre boîte à outils pour travailler avec des objets. Dans ce chapitre, vous verrez que JavaScript a un modèle objet assez puissant, mais il est un peu différent des langages orientés objet traditionnels. Au lieu des systèmes orientés objet basés sur des classes typiques, JavaScript utilise un modèle de prototypes - des objets qui peuvent hériter et étendre le comportement d'autres objets. Quel est l'avantage pour vous ? Vous le saurez bientôt. Alors pour les affaires...

Télécharger à partir du stockage de fichiers gratuit

Résolvez le captcha pour accéder aux liens !

Vous souhaitez toujours acquérir des connaissances approfondies dans le domaine avec lequel vous travaillez. JavaScript fait partie des langages sur lesquels il est quasiment impossible d'avoir une connaissance exhaustive. Il est en constante évolution, tout comme le web en général, donc tout développeur web doit s'efforcer de suivre cette évolution, et plus encore, il doit connaître par cœur les bases de la technologie qu'il utilise.

JavaScript domine désormais le monde informatique. Avec lui, vous pouvez soit créer une petite application web, soit programmer un robot. Heureusement, le langage existe depuis un certain temps et les développeurs qui le maîtrisent ont écrit sur leurs expériences de programmation dans des livres.

Ce livre vous explique comment faire en sorte que les ordinateurs fassent ce que vous voulez qu'ils fassent. Les ordinateurs d'aujourd'hui sont aussi courants que les tournevis - mais contiennent beaucoup plus de complexités cachées et sont donc plus difficiles à comprendre et plus difficiles à utiliser. Pour beaucoup, ils restent des choses étrangères, légèrement menaçantes. Le livre est également disponible en russe.

Ce livre fournit un aperçu complet du monde de JavaScript à travers une ventilation des objets intégrés et des nuances du langage. Ce livre n'est certainement pas destiné aux personnes qui commencent tout juste à apprendre la programmation en général et JavaScript en particulier.

Ce livre se concentre sur les modèles de programmation JavaScript classiques et modernes. En général, il s'adresse aux programmeurs débutants.

HTML5 offre de grandes opportunités. Tout comme jQuery. Tout comme Node.JS. Si vous leur ajoutez un peu plus de JavaScript pur, vous pouvez facilement conquérir le Web.

Ce livre est destiné à ceux qui envisagent de créer des applications Web en utilisant JS. Il décrit les fonctionnalités du langage, les outils utiles, les modèles, et la liste ne se limite pas à cela.

Ce livre vous donnera une connaissance générale de JavaScript, comprenant à la fois sa logique générale et ses détails. L'auteur suppose que le lecteur est déjà familiarisé avec les principes de la programmation orientée objet et certains langages comme PHP, Ruby, Python, C++ ou Java.

Êtes-vous prêt à pousser votre pratique de développement Web un peu plus loin et à passer de la mise en page HTML et CSS à la création de pages entièrement dynamiques ? Alors il est temps de se familiariser avec le langage de programmation "le plus en vogue" - JavaScript !

Après avoir lu ce livre, vous apprendrez tout sur le langage JavaScript, des variables aux boucles. Vous comprendrez pourquoi différents navigateurs réagissent différemment au code et comment écrire un code universel pris en charge par tous les navigateurs. Vous comprendrez pourquoi JS est l'avenir et deviendrez un véritable développeur front-end.

Ce livre vous montre comment écrire des applications frontales en JS sans utiliser de frameworks ou de bibliothèques tiers.

En plus d'une connaissance générale des principes JavaScript, ce livre vous donnera également des connaissances dans des domaines connexes, tels que JSON ou NoSQL, ainsi qu'une compréhension de la façon dont les applications Web sont écrites en général.

Comme son titre l'indique, ce livre porte sur le développement d'applications à page unique. Il ne décrit pas des technologies et des cadres spécifiques, mais les modèles et pratiques généraux sont bien décrits.

Le livre est consacré au travail avec le DOM (Document Object Model) - peut-être la chose la plus importante en JavaScript pour tous les développeurs Web.

Ce livre, écrit par Douglas Crockford, créateur de JSON et JSLint, est un classique du monde JavaScript et devrait être lu par tout le monde. Il couvre les bases de l'approche orientée objet et fournit de nombreux exemples, bons et mauvais. Bien sûr, l'auteur explique comment corriger de tels exemples "nuisibles" et comment éviter de telles erreurs.

Cette série, écrite par le célèbre éducateur Kyle Simpson, se compose de 6 livres, chacun couvrant une section différente de la langue. Le principal avantage de ces livres est qu'ils sont suffisamment courts pour que vous n'ayez pas le temps de vous laisser distraire. Et le livre "ES6 et plus" de cette série peut être acheté en version papier en russe.

JavaScript est outil principal développeurs Web, qui vous permet de rendre les pages Internet interactives, dynamiques et d'atteindre Meilleure performance. Il s'agit d'un didacticiel JavaScript bien structuré qui vous permettra d'apprendre rapidement ce langage non pas le plus facile à apprendre, mais très demandé. Une grande attention dans le livre est accordée à la bibliothèque jQuery. Il existe également de nombreux exemples et tâches détaillées.

Après avoir lu le Guide complet, vous serez en mesure de :

  • Rendez les pages de votre site Web interactives.
  • Maître dernière version plug-in jQuery ui.
  • Créez des formulaires conviviaux avec validation et correction automatiques des données.
  • Appliquer la technologie AJAX.
  • Approfondissez vos connaissances dans le domaine et devenez un professionnel.

Après avoir appris les bases de la mise en page, vous souhaiterez certainement plus d'interactivité et de beauté, ainsi que des moyens plus pratiques pour que le site interagisse avec le backend. C'est alors que JavaScript entre dans l'arène avec le framework jQuery incroyablement populaire. Pour commencer à travailler avec le livre, vous n'avez besoin d'aucune connaissance approfondie - vous en tirerez tous. Il ne présente que les dernières pratiques dans le domaine de la compatibilité entre navigateurs et de l'optimisation des pages, et la présentation est dans un langage compréhensible avec des exemples illustratifs et des illustrations.

Un livre devenu un classique. Sa dernière édition couvre HTML5 et ECMAScript 6, les technologies les plus en vogue aujourd'hui. Il ajoute également de nouveaux chapitres sur jQuery et JavaScript côté serveur. Ce guide sera utile à la fois aux débutants complets et à ceux qui souhaitent perfectionner leurs connaissances en JavaScript.

À propos des autres livres de la série Head First « Le ton juste pour l'expert en programmeur intérieur libéré qui se cache en chacun de nous. Un excellent guide des stratégies de développement pratiques - mon cerveau fonctionne sans être distrait par un jargon académique ennuyeux et obsolète. - Travis Kalanick, directeur d'Uber "Une clarté remarquable, un humour et une bonne dose d'intelligence feront que même un non-programmeur aura un regard positif sur la résolution de problèmes." - Corey Doctorow, deuxième rédacteur en chef, Boing Boing, écrivain de science-fiction "J'ai l'impression d'avoir lu une demi-tonne de livres à la fois." - Ward Cunningham, Inventeur du Wiki "C'est l'un des rares livres sur la programmation que je considère comme indispensable (et je classe dix livres dans cette catégorie, pas plus)." - David Gelernter, professeur d'informatique, Université de Yale "J'ai ri, j'ai pleuré, ce livre m'a touché." - Daniel Steinberg, rédacteur en chef de java.net "Je ne peux pas penser à un meilleur guide touristique qu'Eric et Elizabeth." - Miko Matsumura, vice-président du marketing chez Hazelcast, ancien spécialiste Java en chef, Sun Microsystems « J'adore ce livre. Je l'ai même embrassée devant ma femme. - Satish Kumar "Approche visuelle et présentation cohérente - La meilleure voie apprendre ce genre de choses..." - Danny Goodman, auteur de Dynamic HTML : The Definitive Guide "Contrairement à de nombreux livres de codage techniques chargés de jargon, les guides Head First jQuery aident les débutants à créer leurs premières pages jQuery de manière simple et accessible. ". — Lindsey Skouras, avocate et programmeuse informatique autodidacte Sur les autres livres de la série Head First « Évidemment, Eric et Elizabeth connaissent leur affaire. Les technologies Internet deviennent de plus en plus complexes et la création créative de pages Web commence à jouer un rôle de plus en plus important. L'architecture élégante occupe le devant de la scène dans chaque chapitre, chaque concept étant véhiculé avec une dose égale de pragmatisme et d'esprit." - Ken Goldstein, ancien directeur de Shop.com et auteur de This is Rage : A Novel of Silicon ; Valley and Other Madness « Apprendre HTML, XHTML et CSS est un guide moderne et soigneusement conçu pour des pratiques de mise en page et de présentation de pages Web avant-gardistes. Les auteurs anticipent les points susceptibles de semer la confusion chez le lecteur et les clarifient en temps opportun. L'approche utilisée, qui repose sur une abondance d'exemples illustratifs et la séquence de présentation, est optimale pour le lecteur : il apportera de petites modifications et observera l'effet final dans le navigateur, ce qui lui permettra de comprendre le but de chaque nouvelle élément. - Danny Goodman, auteur de Dynamic HTML: The Definitive Guide "Apprendre HTML, XHTML et CSS dès le début donne au lecteur l'impression que l'ensemble du processus d'apprentissage est simple et amusant. Maîtriser le HTML, lorsqu'il est correctement expliqué, n'est pas plus difficile que d'apprendre les bases de votre langue maternelle, tandis que les auteurs ont fait un excellent travail et fournissent des exemples illustratifs pour chaque concept. - Mike Davidson, président et chef de la direction, Newsvine, Inc. "Au lieu de présenter le matériel dans le style des manuels traditionnels, la programmation pour iPhone et iPad offre au lecteur une méthode vivante, attrayante et même agréable d'apprendre à coder pour iOS. Le matériel est savamment sélectionné et de haute qualité : le livre couvre de nombreuses technologies clés, y compris Core Data, et même des aspects aussi importants que la conception d'interface. Et où d'autre pouvez-vous lire comment UIWebView et UITextField parlent près de la cheminée ? - Sean Murphy, concepteur et développeur d'applications iOS "Le code pour iPhone et iPad explique les principes de développement Applications iOS Depuis le tout début. Les principaux changements par rapport à la première édition concernent iOS 4, Xcode 4 et l'écriture d'applications pour l'iPad. Avec des descriptions étape par étape avec un style visuel, ce livre est un excellent outil d'apprentissage pour la programmation iPhone et iPad sous tous ses aspects, du plus simple au plus avancé. - Rich Rosen, programmeur et co-auteur de Mac OS X pour Unix Geeks BBK 32.988-02-018.1 UDC 004.43 F88 F88 Freeman E., Robson E. Learning JavaScript Programming. - Saint-Pétersbourg : Peter, 2015. - 640 p. : ill. - (Série "Tête la première O'Reilly"). ISBN 978-5-496-01257-7 Êtes-vous prêt à aller plus loin dans votre programmation Web et à passer du HTML et du CSS aux pages entièrement dynamiques ? Alors il est temps de se familiariser avec le langage de programmation "le plus en vogue" - JavaScript ! Avec ce livre, vous apprendrez tout sur le langage JavaScript, des variables aux boucles. Vous comprendrez pourquoi différents navigateurs réagissent différemment au code et comment écrire un code universel pris en charge par tous les navigateurs. Vous comprendrez pourquoi, avec le code JavaScript, vous n'aurez jamais à vous soucier de la congestion des pages et des erreurs de transfert de données. Ne soyez pas intimidé, même si vous n'avez pas écrit une seule ligne de code auparavant - grâce au format de présentation unique, ce livre vous guidera facilement tout au long du parcours d'apprentissage, de l'écriture d'un simple script à la création de projets Web complexes qui fonctionnera dans tous les navigateurs modernes. Une caractéristique de cette édition est la manière unique de présenter le matériel, qui distingue la série Head First d'O'Reilly d'un certain nombre de livres de programmation ennuyeux. 12+ (Conformément à la loi fédérale du 29 décembre 2010 n° 436-FZ.) BBK 32.988-02-018.1 UDC 004.43 Droits de publication obtenus en accord avec O'Reilly. Tous les droits sont réservés. Aucune partie de ce livre ne peut être reproduite sous quelque forme que ce soit sans l'autorisation écrite des détenteurs des droits d'auteur. ISBN 978-1449340131 ISBN 978-5-496-01257-7 © Traduction russe autorisée de l'édition anglaise de Head First JavaScript Programming, 1st Edition (ISBN 9781449340131) © 2014 Eric Freeman, Elisabeth Robson. Cette traduction est publiée et vendue avec l'autorisation de O'Reilly Media, Inc., qui détient ou contrôle tous les droits de publication et de vente du même "Peter", 2015 Dédié à JavaScript - vous n'êtes pas né dans une famille prospère, mais vous avez a dépassé toutes les langues qui ont essayé de vous concurrencer dans les navigateurs. Auteurs Elizabeth Robson Auteurs Eric Freem Eric, selon les mots de l'un des créateurs de la série Head First, est "l'une des rares personnes qui connaît bien la langue, la pratique et la culture d'une grande variété de domaines - techno-hipster , vice-président, ingénieur, analyste." Pendant près d'une décennie, Eric a été CTO de Disney Online & Disney.com à The Walt Disney Company. Eric donne maintenant de son temps à WickedlySmart, une jeune entreprise qu'il a co-fondée avec Elizabeth. Eric est un informaticien qui a fait des recherches avec David Gelernter à l'Université de Yale. Sa thèse est devenue un travail fondateur dans le domaine des interfaces qui implémentent la métaphore du bureau, ainsi que la première implémentation des flux d'activités, un concept qu'il a développé avec Gelernter. Dans son temps libre, Eric est sérieusement impliqué dans la musique ; Le dernier projet d'Eric, Immersion Station, créé avec Steve Roach, est à retrouver sur Application iPhone boutique. Eric vit avec sa femme et sa fille sur Bainbridge Island. Sa fille passe souvent au studio de musique d'Eric pour jouer avec des synthétiseurs et des générateurs d'effets audio. Écrivez à Eric à [courriel protégé] ou visitez son site Web http://ericfreeman.com. 8 Elizabeth est programmeuse, écrivaine et enseignante. Elle est amoureuse de son travail depuis qu'elle a fréquenté l'Université de Yale, où elle a obtenu sa maîtrise en informatique. Elizabeth est sur Internet depuis longtemps ; elle a aidé à créer le populaire projet Ada, l'un des premiers sites à aider les femmes à trouver des informations sur les emplois et l'éducation dans le domaine de l'informatique. Elle a cofondé WickedlySmart, une entreprise d'éducation en ligne basée sur le Web. Ici, elle crée des livres, des articles, des cours vidéo, etc. En tant que directrice des projets spéciaux chez O'Reilly, Elizabeth a développé des séminaires et des cours à distance. C'est ainsi que s'est manifestée sa passion pour la création de formations qui aident les gens à comprendre les nouvelles technologies. Avant de rejoindre O'Reilly, Elizabeth a travaillé chez The Walt Disney Company où elle a dirigé la recherche et le développement pour les médias numériques. Lorsqu'Elizabeth n'est pas devant son ordinateur, elle fait de la randonnée, du vélo et de l'aviron, ou cuisine des repas végétariens. Vous pouvez écrire à Elizabeth à [courriel protégé] wickedlysmart.com ou visitez son blog http://elisabethrobson.com. table des matières Table des matières (résumé) 1 2 3 4 5 6 7 8 9 10 11 12 13 Introduction Premiers pas avec JavaScript. En eaux inconnues Le vrai code. Etape suivante Introduction aux fonctions. Des fonctions pour tous Mettre de l'ordre dans les données. Les tableaux rencontrent les objets. Un voyage à Objectville Interaction avec une page web. Types de modèles DOM, égalité, conversions et tout ça. Types sérieux Tous ensemble. Construire une application Programmation asynchrone. Gestion des événements Fonctionnalités de première classe. Fonctions illimitées Fonctions, portée et fermetures anonymes. Fonctions sérieuses Création non triviale d'objets. Création d'objets Utilisation de prototypes. Objets forts 25 37 79 113 157 203 257 291 341 403 449 495 539 579 Contenu (réel) Introduction Votre cerveau et JavaScript. Vous étudiez - préparez-vous à l'examen. Ou essayer de maîtriser un sujet technique complexe. Votre cerveau essaie de vous rendre service. Il essaie de s'assurer que de précieuses ressources ne sont pas gaspillées sur ces informations apparemment non pertinentes. Ils sont mieux dépensés pour quelque chose d'important. Alors, comment lui faire apprendre JavaScript ? À qui s'adresse ce livre Nous savons ce que vous pensez Ce livre est destiné à ceux qui veulent apprendre la métacognition : la science de l'esprit Remerciements 28 29 30 33 34 9 sommaire 1 Dans des eaux inconnues, JavaScript ouvre des possibilités fantastiques. JavaScript, le principal langage de programmation du World Wide Web, vous permet de définir un comportement étendu dans les pages Web. Oubliez les pages sèches, ennuyeuses et statiques qui ne prennent que de l'espace sur l'écran - avec JavaScript, vous interagirez avec les utilisateurs, réagirez aux événements, recevrez et utiliserez des données d'Internet, afficherez des graphiques... et bien plus encore. Avec une bonne connaissance de JavaScript, vous pouvez même programmer des comportements complètement nouveaux sur vos pages. Et n'hésitez pas, vos connaissances seront recherchées. Désormais, JavaScript n'est pas seulement l'un des langages de programmation les plus populaires, mais il est pris en charge par tous les navigateurs modernes (et de nombreux navigateurs non modernes); de plus, des implémentations JavaScript intégrées sont apparues qui existent séparément des navigateurs. Quoi qu'il en soit, assez parlé. Il est temps de se mettre au travail ! CSS HTML JS Browser 10 Premiers pas avec JavaScript Fonctionnement de JavaScript 38 Comment JavaScript est écrit 39 Comment inclure JavaScript dans une page 40 JavaScript, tu as parcouru un long chemin, bébé. .. 42 Comment sont créées les commandes 46 Variables et valeurs 47 Attention aux mots clés ! 48 Attention aux expressions ! 51 Répétition des opérations 53 Fonctionnement de la boucle while 54 Prise de décision en JavaScript 58 Et s'il y a BEAUCOUP de décisions à prendre... 59 Engager l'utilisateur à interagir avec la page 61 Apprendre à connaître console.log 63 Comment ouvrir la console 64 Ecrire une application JavaScript sérieuse 65 Comment ajouter du code à la page ? (chemins de comptage) 68 Balisage et code : les chemins divergent 69 table des matières 2 code réel Prochaine étape Vous savez déjà ce que sont les variables, les types, les expressions... et ainsi de suite. Vous savez déjà quelque chose sur JavaScript. De plus, les connaissances sont suffisantes pour commencer à écrire de vrais programmes qui font quelque chose d'intéressant que quelqu'un utilisera. Certes, vous n'avez pas assez d'expérience pratique dans l'écriture de code, et nous allons commencer à résoudre ce problème dès maintenant. Comment? Commençons simplement à écrire un jeu simple, entièrement implémenté en JavaScript. La tâche est de grande envergure, mais nous avancerons progressivement vers l'objectif, étape par étape. Alors, passons aux choses sérieuses, et si vous souhaitez soudainement utiliser notre développement dans vos projets, cela ne nous dérange pas, disposez du code comme bon vous semble. Préparatifs Entrée de l'utilisateur Miss Checking Résultat Touché Navire coulé Marque : Navire coulé Résultat Score/Score Jeu terminé Marque : Hit Mettons en œuvre un jeu de cuirassé 80 Première exécution... 80 Commençons par la conception 81 Analyse du pseudocode 83 Arrêtez ! Avant d'aller plus loin, souvenez-vous du HTML ! 85 Code pour une version simplifiée de Naval Battle 86 Passons à l'implémentation de la logique 87 Fonctionnement de la fonction d'invite 89 Vérification des coups 90 Ajout du code de vérification des coups 93 Sortie d'après-jeu 94 L'implémentation de la logique est prête ! 96 Un peu sur le contrôle qualité 97 Ça ne peut pas être plus court... 101 "Battleship" simplifié est presque prêt 102 Comment obtenir une position aléatoire 103 La célèbre recette pour générer des nombres aléatoires 103 Retour au contrôle qualité 105 Félicitations, vous avez créé votre premier programme JavaScript ! Maintenant quelques mots sur la réutilisation du code. Vous savez déjà quelque chose sur la programmation ; il est temps de passer à l'étape B suivante et de vous familiariser avec les fonctionnalités. Les fonctions vous permettent d'écrire du code qui peut être réutilisé dans différentes situations ; un code nettement plus facile à maintenir ; code qui peut être abstrait et donné un nom simple afin que vous puissiez oublier les détails banals et vous concentrer sur les choses qui comptent vraiment. Vous verrez que les fonctions ouvrent non seulement la voie aux prouesses du programmeur, mais jouent également un rôle clé dans le style de programmation JavaScript. Dans ce chapitre, nous commencerons par les bases : les mécanismes et les subtilités du fonctionnement des fonctions, puis nous affinerons vos compétences avec les fonctions dans le reste du livre. Commençons donc par les bases... dès maintenant. Alors, qu'est-ce qui ne va pas avec ce code ? 115 Au fait, avez-vous déjà entendu parler des FONCTIONS ? 117 D'accord, mais comment tout cela fonctionne-t-il? 118 Que peut-on transmettre aux fonctions ? 123 JavaScript utilise le passage par valeur 126 Expérimenter avec des fonctions 128 Les fonctions peuvent également renvoyer des valeurs 129 Parcourir une fonction avec retour 130 Variables globales et locales 133 Portée des variables locales et globales 135 La courte durée de vie des variables 136 N'oubliez pas de déclarer variables locales ! 137 sommaire 4 organiser les données Tableaux 0 60 50 1 2 50 52 3 60 54 4 5 58 6 7 54 8 54 9 58 JavaScript peut fonctionner avec bien plus que des nombres, des chaînes et des booléens. Jusqu'à présent, nous avons travaillé exclusivement avec des primitives - des chaînes simples, des nombres et des booléens (par exemple, "Fido", 23 et vrai). Beaucoup peut être fait avec les types primitifs, mais à un moment donné, vous aurez besoin de données riches pour représenter tous les articles d'un panier, toutes les chansons d'une liste de lecture, un groupe d'étoiles et leurs magnitudes, ou un catalogue de produits entier. De telles tâches nécessitent des fonds plus sérieux. Un outil typique pour représenter de telles données homogènes est un tableau JavaScript. Dans ce chapitre, vous apprendrez à placer des données dans un tableau, à les transférer et à les utiliser. Les chapitres suivants exploreront d'autres manières de structurer les données, mais nous commencerons par les tableaux. Voulez-vous nous aider? 158 Comment représenter un ensemble de valeurs en JavaScript 159 Comment fonctionnent les tableaux 160 Combien y a-t-il d'éléments dans un tableau ? 162 Pretty Phrase Generator 164 Pendant ce temps chez Bubbles-R-Us... 167 Comment itérer sur les éléments d'un tableau 170 Mais attendez, il y a plus moyen pratique éclater ! 172 Quoi, encore?... Cela ne pourrait-il pas être plus court? 178 Raffinement de la boucle for avec l'opérateur d'incrémentation postfixée 179 Création d'un tableau vide (et ajout d'éléments) 183 Voici nos gagnants... 187 Petit aperçu du code... 189 Travail sur la fonction printAndGetHighScore 190 Refactoring du code pour définir la fonction printAndGetHighScore 191 Maintenant tous ensemble... 193 13 table des matières 5 14 rencontrer des objets Un voyage à Objectville Jusqu'à présent, nous avons utilisé des primitives et des tableaux. Et il a utilisé une méthodologie de programmation procédurale avec des commandes simples, des conditions, des boucles for/while et des fonctions. Cette approche était loin des principes de la programmation orientée objet. En fait, cela n'avait rien à voir avec la programmation orientée objet. Nous avons utilisé des objets de temps en temps (et vous ne le saviez même pas), mais nous n'en avons pas encore écrit. Il est temps de quitter la ville procédurale ennuyeuse et de commencer à créer vos propres objets. Dans ce chapitre, vous apprendrez pourquoi les objets améliorent grandement nos vies - du moins dans le domaine de la programmation. Alors sachez ceci : une fois que vous vous serez habitué aux objets, vous ne voudrez plus revenir en arrière. Oh, et n'oubliez pas d'envoyer une carte postale lorsque vous vous installerez. Quelqu'un a-t-il dit "objets" ? ! 204 En savoir plus sur les propriétés... 205 Comment créer un objet 207 Qu'est-ce que "l'approche orientée objet" ? 210 Fonctionnement des propriétés 211 Comment un objet est-il stocké dans une variable ? Les esprits curieux se demandent... 216 Comparer des primitives à des objets 217 Les objets peuvent faire plus... 218 Pré-vérification 219 Vérification pas à pas 220 Parlons un peu plus du passage d'objets à des fonctions 222 Tenez-vous bien ! Et apprenez à vos objets... 228 Améliorer la méthode drive 229 Pourquoi la méthode drive ne connaît-elle pas la propriété start ? 232 Comment ça marche 234 Comment le comportement affecte l'état 240 L'état affecte le comportement 241 Félicitations pour vos premiers objets ! 243 Imaginez être entouré d'objets solides ! (et ils vous facilitent la tâche) 244 table des matières 6 interagir avec une page Web Le DOM Vous avez fait des progrès significatifs dans l'apprentissage de JavaScript. En fait, vous êtes passé de débutant dans le domaine des scripts à... programmeur. Cependant, il manque quelque chose : pour utiliser pleinement vos compétences en JavaScript, vous devez être capable d'interagir avec la page Web qui héberge votre code. Ce n'est que dans ce cas que vous pourrez écrire des pages dynamiques qui répondent aux actions de l'utilisateur et sont mises à jour après le chargement. Comment interagir avec la page ? Via le modèle d'objet de document DOM (Document Object Model). Dans ce chapitre, nous examinerons le DOM et les principes généraux de travail avec ce modèle à partir de JavaScript pour étendre les capacités de la page. Bonjour, je suis un navigateur. Je lis une page et en construis une représentation dans le DOM. Dans le chapitre précédent, nous vous avons donné une énigme de rupture de code 258 Que fait ce code ? 259 Comment JavaScript interagit réellement avec la page 261 Comment préparer le DOM 262 DOM : premières impressions 263 Obtenir un élément avec getElementById 268 Qu'obtenons-nous exactement du DOM ? 269 ​​À la recherche de HTML interne 270 Que se passe-t-il lorsque vous apportez des modifications au DOM 272 Et n'essayez pas d'exécuter mon code avant que la page ne soit chargée ! 277 "Gestionnaire d'événements" ou "fonction de rappel" 278 Comment définir un attribut avec setAttribute 283 Le plaisir des attributs continue ! (les valeurs d'attribut peuvent être LU) 284 Et n'oubliez pas que getElementById peut aussi retourner null ! 284 Chaque fois que vous demandez une valeur, assurez-vous d'obtenir ce que vous avez demandé... 284 Que pouvez-vous faire d'autre avec le DOM ? 286 document html head body p id = "greenplanet" p id = "redplanet" p id = "blueplanet" Tout va bien Rien à signaler Tous les systèmes A-OK parlent sérieusement des types. L'un des grands avantages de JavaScript est qu'un débutant peut aller assez loin sans avoir à se plonger dans les détails de la langue. Mais pour vraiment maîtriser la langue, être promu au travail et entrer dans ce qui vaut vraiment la peine d'être fait, vous devez être doué pour les types. Vous souvenez-vous de ce que nous avons dit à propos de JavaScript - qu'il n'avait pas le luxe d'une définition académique révisée par des pairs ? Oui, c'est vrai, mais le manque de fondation académique n'a pas arrêté Steve Jobs et Bill Gates ; il n'a pas non plus interféré avec JavaScript. Cela signifie que le système de type de JavaScript est... eh bien, disons simplement que ce n'est pas le plus réfléchi, et qu'il contient de nombreuses bizarreries. Mais ne vous inquiétez pas, nous allons le décomposer dans ce chapitre, et vous serez bientôt en mesure de contourner en toute sécurité tous ces types de désagréments. La vérité est ailleurs... 292 Attention : undefined apparaît parfois à l'improviste... 294 Comment utiliser null 297 Travailler avec NaN 299 Et puis ça devient encore plus bizarre 299 Nous devons vous l'avouer... 301 Le test d'égalité opérateur (également connu sous le nom de = =) 302 Comment fonctionne la conversion d'opérande (ce n'est pas aussi effrayant que cela puisse paraître) 303 Comment vérifier l'égalité stricte 306 Encore plus de conversions de type. .. 312 Comment vérifier l'égalité de deux objets 315 La pseudo-vérité est quelque part à proximité... 317 Ce que JavaScript considère comme "pseudo-faux" 318 La vie secrète des chaînes 320 Une chaîne peut ressembler à la fois à une primitive et à un objet 321 Un bref aperçu des méthodes (et des propriétés) des chaînes 323 Battle for the chair 327 sommaire 8 tous ensemble Construire l'application Préparez vos outils. Oui, votre boîte à outils est constituée de vos nouvelles compétences en programmation, de votre connaissance du DOM et même de quelques connaissances en HTML et CSS. Dans ce chapitre, nous allons tout rassembler pour créer notre première application Web complète. Jeux assez primitifs avec un navire, qui est placé sur une seule ligne. Dans ce chapitre, nous allons construire une version complète : un grand terrain de jeu, plusieurs vaisseaux, saisie de l'utilisateur directement sur la page web. Nous allons créer la structure de la page de jeu dans le balisage HTML, appliquer un style visuel avec CSS et écrire le code JavaScript qui définit le comportement du jeu. Préparez-vous : dans ce chapitre, nous allons faire de la programmation sérieuse et écrire du code assez sérieux. Cette fois, nous allons construire un VRAI jeu Battleship 342 Retour au HTML et CSS 343 Création pages HTML Vue d'ensemble 344 Ajouter du style 348 Utiliser les classes hit and miss 351 Comment concevoir un jeu 353 Implémenter la vue 355 Comment fonctionne la méthode displayMessage 355 Comment fonctionnent les méthodes displayHit et displayMiss 357 Le modèle 360 ​​Comment nous allons représenter les données du navire 362 Implémentation l'objet modèle 365 Préparation de la méthode de tir 366 Implémentation du contrôleur 373 E Gestion d'un tir 374 F Code de planification... 375 B C D Navire 1 A Navire 2 Navire 3 G 0 1 2 3 4 HIT 5 6 Implémentation de la méthode parseGuess 376 Comptage et gestion des tirs 379 Comment lier un gestionnaire d'événements au bouton de tir 383 Transmettre des données au contrôleur 384 Comment placer des navires 388 La méthode generateShip 389 Générer la position initiale d'un nouveau navire 390 Compléter la méthode generateShip 391 17 table des matières 9 18 programmation asynchrone Manipulation événements Dans ce chapitre, vous passerez à un tout autre niveau. Jusqu'à présent, nous avons écrit du code qui est généralement exécuté de haut en bas. Bien sûr, il utilisait des fonctions, des objets et des méthodes, mais l'exécution suivait une voie prédéterminée. Il est dommage que nous devions rapporter de telles nouvelles dans la seconde moitié du livre, mais cette structure de code n'est pas typique de JavaScript. La plupart du code JavaScript est écrit pour gérer les événements. Quels événements ? Oui, n'importe lequel. Un utilisateur clique sur une page, des données arrivent du web, un minuteur se déclenche dans le navigateur, des changements se produisent dans le DOM... Cette liste n'est en aucun cas exhaustive. De plus, des événements se produisent constamment dans le navigateur et passent largement inaperçus. Dans ce chapitre, nous allons repenser notre approche de la programmation et apprendre pourquoi nous devons écrire du code qui répond aux événements. Qu'est-ce qu'un « événement » ? 405 Qu'est-ce qu'un "gestionnaire d'événements" ? 406 Comment créer votre premier gestionnaire d'événements 407 Essai routier 408 Comment comprendre les événements ? Ecrire un jeu, bien sûr ! 410 Implémentation du jeu 411 Essai routier 412 Ajout de plusieurs images 416 Vous devez maintenant attribuer un gestionnaire à toutes les propriétés Onclick de toutes les images 417 Comment utiliser un gestionnaire pour toutes les images 418 Fonctionnement de l'objet événement 421 Utilisation de l'objet événement 423 Essai routier : Objet et source de l'événement 424 Files d'attente et événements 426 Encore plus d'événements 429 Fonctionnement de setTimeout 430 Achèvement du code de jeu 434 Test de la minuterie 435 Table des matières 10 fonctionnalités les mieux notées Fonctionnalités illimitées Explorez les fonctionnalités et brillez. Dans chaque métier, art et discipline, il existe un principe clé qui sépare les joueurs "de niveau intermédiaire" des vrais pros - et lorsqu'il s'agit de JavaScript, une bonne compréhension des fonctions est la marque du professionnalisme. Les fonctions jouent un rôle fondamental dans JavaScript, et de nombreuses techniques utilisées dans la conception et l'organisation du code sont basées sur une bonne connaissance des fonctions et la capacité de les utiliser. Le chemin vers l'apprentissage des fonctions à ce niveau est intéressant et stimulant, alors préparez-vous... Ce chapitre est un peu comme une visite de la chocolaterie de Willy Wonka - vous verrez beaucoup de choses étranges, folles et merveilleuses tout en apprenant JavaScript les fonctions. Double vie mot-clé fonction 450 Déclarations de fonction et expressions de fonction 451 Analyse d'une déclaration de fonction 452 Et ensuite ? Le navigateur exécute le code 453 Aller de l'avant... Tester une condition 454 Enfin... 455 Fonctions en tant que valeurs 459 Fonctions en tant que citoyens JavaScript complets 462 Voler en première classe 463 Écrire du code pour traiter et vérifier les passagers 464 Itérer sur les passagers 466 Passer une fonction à Une autre fonction 467 Tester la conduite... plutôt le vol 467 Retourner des fonctions à partir de fonctions 470 Code de commande de boisson 471 Code de commande de boisson : approche différente 472 Attendez, une boisson ne suffit pas ! 473 Commander des boissons à l'aide de la fonction de première classe 474 Test Drive Flight 475 Web Cola 477 Fonctionnement de la méthode Array Sort 479 Rassembler le tout 480 Pendant ce temps au Web Col 481 Test Drive Tri 482 19 Table des matières 11 Merde ! Judy a encore raison. 20 Fonctions anonymes, portée et fermetures Fonctions sérieuses Nous avons beaucoup appris sur les fonctions, mais ce n'est pas tout. Vous apprendrez à travailler efficacement avec les fonctions. Le chapitre ne sera pas trop long, mais il sera assez intense, donc à la fin du chapitre, votre code JavaScript sera plus expressif que prévu. Vous serez également prêt à entreprendre l'analyse de code d'un collègue ou à explorer une bibliothèque JavaScript open source, car nous apprendrons également certains idiomes et conventions courants concernant l'utilisation des fonctions. Et si vous n'avez jamais entendu parler de fonctions et de fermetures anonymes, c'est ici qu'il faut commencer ! Attendez une seconde... Judy a-t-elle mentionné les fermetures ? Ils semblent avoir quelque chose à voir avec ce que nous faisons. Étudions ce sujet et vengeons-nous-en. Regardons les fonctions de l'autre côté... 496 Comment utiliser une fonction anonyme ? 497 Quand une fonction est-elle définie ? Il y a des options... 503 Que s'est-il passé ? Pourquoi la fonction fly n'est-elle pas définie ? 504 Comment les fonctions imbriquées sont créées 505 Comment l'imbrication affecte la portée 506 La portée lexicale en bref 508 Ce qui est intéressant à propos de la portée lexicale 509 Encore des fonctions 511 Appels de fonction (encore) 512 Qu'est-ce qu'une « fermeture » ? 515 Comment fermer une fonction 516 Utiliser des fermetures pour implémenter un compteur 518 Tester un compteur magique 519 Un aperçu des coulisses 519 Créer une fermeture avec une expression de fonction comme argument 521 Une fermeture contient un environnement immédiat, pas une copie de celui-ci 522 Créer une fermeture dans un gestionnaire d'événements 523 Programme sans fermeture 524 Un programme avec une fermeture 524 Tester un compteur d'accès 525 Comment fonctionne une fermeture 526 Table des matières 12 Création d'objets non triviaux Création d'objets Jusqu'à présent, nous avons créé des objets manuellement. Pour chaque objet, un littéral d'objet a été utilisé, qui définit toutes les propriétés sans exception. Pour les petits programmes, c'est acceptable, mais pour le code sérieux, vous avez besoin de quelque chose de mieux, à savoir des constructeurs d'objets. Les constructeurs facilitent la création d'objets et vous pouvez créer des objets à partir d'un seul modèle - en d'autres termes, les constructeurs vous permettent de créer une série d'objets qui ont les mêmes propriétés et contiennent les mêmes méthodes. Le code écrit à l'aide de constructeurs est beaucoup plus compact et réduit le risque d'erreurs lors de la création d'un grand nombre d'objets. Nous vous assurons qu'après avoir étudié ce chapitre, vous utiliserez les constructeurs comme si vous aviez fait cela toute votre vie d'adulte. Création d'objets à l'aide de littéraux d'objet 540 À propos des similitudes et des différences entre les objets 541 Constructeurs 543 Comment créer un constructeur 544 Comment utiliser un constructeur 545 Fonctionnement des constructeurs 546 Vous pouvez également ajouter des méthodes aux constructeurs 548 Zone de danger 551 Sécurité 551 Produisons en masse ! 554 Essai routier sur de nouvelles voitures 556 Ne vous précipitez pas avec les littéraux d'objet 557 Conversion d'arguments en un littéral d'objet 558 Conversion d'un constructeur de voiture 559 Instances 561 Même les objets construits peuvent avoir des propriétés indépendantes 564 Constructeurs du monde réel 566 Objet de tableau 567 Autres objets intégrés 569 21 Table des matières 13 Utilisation de prototypes Objets puissants Apprendre à créer des objets n'est que le début.Il est temps de "développer vos muscles" - découvrez des outils avancés pour définir les relations entre les objets et partager le code. De plus, nous aurons besoin de mécanismes pour étendre les objets existants. En d'autres termes, nous devons étendre notre boîte à outils pour travailler avec des objets. Dans ce chapitre, vous verrez que JavaScript a un modèle objet assez puissant, mais il est un peu différent des langages orientés objet traditionnels. Au lieu des systèmes orientés objet basés sur des classes typiques, JavaScript utilise un modèle de prototypes - des objets qui peuvent hériter et étendre le comportement d'autres objets. Quel est l'avantage pour vous ? Vous le saurez bientôt. Alors, passons aux choses sérieuses... Object toString() hasOwnProperty() // et plus 581 mais quelle est son efficacité ? 582 La duplication des méthodes crée-t-elle vraiment des problèmes ? 584 Qu'est-ce qu'un « prototype » ? 585 Héritage de prototype 586 Comment fonctionne l'héritage 587 espèce : "Canine" Redéfinir un prototype 589 bark() run() wag() Comment obtenir un prototype 591 Comment créer un prototype 592 Dog Prototype Surcharger une méthode héritée 594 À propos des prototypes dynamiques 598 A implémentation plus intéressante de la méthode sit 600 ShowDog Prototype Revisited : comment fonctionne la propriété sitting 601 ligue : "Webville" Premiers pas avec la conception d'objets 605 Création d'une chaîne prototype 607 Fonctionnement de l'héritage de chaîne prototype 608 stack() bait() gait() groom( ) Nom de ShowDog : "Scotty" race : "Scottish Terrier" poids : 15 gestionnaire : "Cookie" 22 Représentation d'objets dans des diagrammes Constructeurs à nouveau : réutilisation du code, analyse des résultats 617 Nettoyage 618 Encore plus d'efforts 619 Calling Dog.call étape par étape 620 Faire bon usage de l'héritage. .. étendre l'objet intégré 626 Théorie de la Grande Unification de JavaScript 628 Des objets pour une vie meilleure 628 Tout mettre ensemble 629 comment utiliser ce livre Introduction Je n'arrive pas à croire qu'ils aient mis ça dans un livre sur la programmation JavaScript ! n o u s t o u r t o u n t o u n t o u n t o u n t e t o u n t o u n t o u n t o u n t o u n t o u n t o u n t o u n t o u n t o u n t o u n t o u n t o u n t o u n t h S o a n v So u na Ja et n va question : « ou et m o programmes dans le livre n comment travailler avec ce livre Pour qui ce livre est-il écrit ? Si vous répondez oui à toutes les questions suivantes : 1 Vous avez accès à un ordinateur avec un navigateur Web moderne et éditeur de texte ? 2 Vous souhaitez apprendre, mémoriser, comprendre et apprendre à programmer en JavaScript en utilisant les meilleures pratiques de développement et les standards les plus modernes ? 3 Préférez-vous une conversation animée à des conférences académiques sèches et ennuyeuses ? ...Alors, ce livre est pour toi. Par "navigateur moderne", nous entendons une version mise à jour de Safari, Chrome, Firefox ou IE version 9 et supérieure. [Note des ventes : en fait, ce livre est destiné à tous ceux qui ont de l'argent.] À qui ce livre ne serait-il pas destiné ? Si vous répondez « oui » à l'une des questions suivantes : 1 Êtes-vous absolument ignorant de la programmation Web ? Vous entendez parler de HTML et CSS pour la première fois ? Dans ce cas, il est préférable de commencer par Apprendre HTML, XHTML et CSS pour apprendre à créer des pages Web avant de se lancer dans JavaScript. 2 Vous êtes déjà un développeur web expérimenté et vous cherchez un guide ? 3 Avez-vous peur d'essayer quelque chose de nouveau ? Vous préférez aller chez le dentiste plutôt que de porter des carreaux et des rayures ? Pensez-vous qu'un livre dans lequel des objets JavaScript sont représentés sous la forme de petits hommes ne peut pas être sérieux ? ...ce livre n'est pas pour vous. 24 introduction introduction Nous savons ce que vous pensez « Les livres de programmation sérieux sont-ils comme celui-ci ? « Et pourquoi y a-t-il tant de dessins ici ? "Est-il possible d'apprendre quelque chose comme ça?" Votre cerveau pense que CECI est important. Nous savons ce que pense votre cerveau Le cerveau a soif de nouvelles expériences. Il cherche constamment, analyse, s'attend à quelque chose d'inhabituel. C'est comme ça que ça marche, et ça nous aide à survivre. Comment notre cerveau gère-t-il toutes les choses habituelles du quotidien ? Il essaie de toutes ses forces de se protéger d'eux afin qu'ils n'interfèrent pas avec son véritable travail - la préservation de ce qui est vraiment important. Le cerveau ne considère pas nécessaire de stocker des informations ennuyeuses. Il ne passe pas le filtre qui coupe le "évidemment sans importance". Mais comment le cerveau sait-il ce qui est important ? Imaginez que vous vous promenez et que soudain un tigre apparaît juste devant vous. Que se passe-t-il dans votre tête et votre corps ? Les neurones sont activés. Les émotions éclatent. Des réactions chimiques ont lieu. Et puis votre cerveau comprend... Génial. Encore 613 pages sèches et ennuyeuses. Cerveau Votre esprit, g sol CELA et ce dont Eo ne se souvient pas Bien sûr, c'est important ! Ne pas oublier! Eh bien, peut-être. Imaginez maintenant que vous êtes à la maison ou à la bibliothèque - dans un endroit chaleureux et confortable où il n'y a pas de tigres. Vous étudiez - préparez-vous à l'examen. Ou vous essayez de maîtriser un sujet technique complexe auquel on vous a donné une semaine... dix jours maximum. Et voici le problème : votre cerveau essaie de vous rendre service. Il essaie de s'assurer que de précieuses ressources ne sont pas gaspillées sur ces informations apparemment non pertinentes. Ils sont mieux dépensés pour quelque chose d'important. Pour les tigres, par exemple. Ou le fait qu'il vaut mieux ne pas toucher au feu. Ou qu'il ne faut pas skier en T-shirt et short. Pas moyen facile dites à votre cerveau : « Écoute, cerveau, je te suis certainement reconnaissant, mais peu importe à quel point ce livre est ennuyeux et même si mon capteur d'émotion est maintenant à zéro, je veux me souvenir de ce qui est écrit ici. plus� 25 comment travailler avec ce livre enseigne même Ce livre est pour ceux qui souhaitent ne pas oublier. quelque chose » à comprendre, mais selon « w est-ce bien, mais al manger ? Recherche d'abord Comment apprenons-nous quelque chose. D'après le nouvel att, il n'y a plus personne pour assimiler Push dans la tête de la psychologie formée et hy lo io o ir ne sais pas comment tivistics, soit dit en passant, sur la page. Nous avons tendance à penser que dans le domaine de la cognition, c'est plus direct, il faut quelque chose de plus matériel, contrairement à d'autres langues, le travail. Le code JavaScript est transmis pour forcer votre cerveau st : py série Head Fir Principes de base directement au navigateur. texte st, mieux que d'habitude ka est rappelé bras lu fo dans la visualisation. Graphity ii reproduit l'efficacité du littéral et augmente considérablement le o, également le serveur Web Chrome "Code trouvé, obtenez" e recherche). , tions (jusqu'à 89% est montré dans les chiffres, encore plus obscure. Il devient plus clair d'elle, à partir de laquelle il a été montré que d'autres études sur th) présentation. Une conférence formelle récente (dans le contexte de l'expansion du matériel a été signalée alessc. Grow %. Mp 40 lorsque la parole est atteinte lors du test final, il s'agit en soi d'un zul retes et d'une amélioration de l'axe de la conférence. Ne vous occupez pas Je pense que pour le lire c'est une vm, sed ia batteur sur le test attention : occupe du code JavaScript Ce qui attirera trop sérieusement votre attention. . à table ou à donner des cours à ou non commencer à forcer Maintenant que vous êtes un lecteur. Pendant que vous êtes absent, soyez prudent.La participation active de Tatnya Chimet sur le deoise et la tête n'est rien de plus prudent avec votre gyrus, dans le vôtre, il devrait l'être. celles; Le but de cette tâche est de résoudre les problèmes de l'exercice A, pour cela vous avez besoin de nouvelles connaissances. implication, dans la solution de laquelle il y a des questions délicates. J'ai le cerveau et différents chuv vans les deux hémisphères ma liste de lecture

Kick'n Tunes

BT - Satellite : belle mélodie rythmée.

Oh moi. chanter! Attirez rapidement l'attention de ce lecteur - Attirez (et retenez) ou, oh, je veux étudier ceci Ne vous inquiétez pas du tout pour tout le monde : « Je sais, le cirrtua en Siyot attire l'attention ! ah la page." Le cerveau est deystzki pays mais je m'endors sur le premier, inattendu. oh u n el rgat zagoe, une manie étrange et attrayante d'être intéressant d'être ennuyeux. L'intérieur du sujet n'a pas à sauter l'un de ces couteaux.L'étude est plus lente. la capacité de mémoriser rapidement de quoi il s'agit est reconnue beaucoup plus rapidement. oh miam. Nous savons que nous nous soucions de vous. Faites appel aux émotions. On est à peu près rien : c'est à peu près et ça dépend de l'émotion, on ne travaille pas ici. Non, centime chuv c'est cool ! au moment de décider quand, nous nous souvenons de l'intérêt et du sentiment "Ding, j'ai peur, tu es surpris que tu comprennes de telles émotions, comment ou quand comprends-tu, mais attendons avec impatience de compter la tâche écrasante qui entoure le département chesky. 26 introduction introduction Métacognition : la science de la pensée Si vous voulez vraiment acquérir de nouvelles connaissances plus rapidement et plus profondément, réfléchissez à votre façon de penser. Apprendre pour apprendre. Peu d'entre nous étudient la théorie de la métacognition au cours de nos études. Nous sommes censés apprendre, mais on nous apprend rarement à le faire. Maintenant, comment puis-je faire en sorte que mon cerveau se souvienne de tout cela... Mais puisque vous lisez ce livre, alors vous voulez probablement apprendre à écrire des programmes en JavaScript, et le plus rapidement possible. Vous voulez vous souvenir de ce que vous lisez, et pour cela, il est absolument nécessaire de comprendre ce que vous lisez en premier. Pour tirer le meilleur parti du processus d'apprentissage, vous devez amener votre cerveau à percevoir nouveau matériel comme quelque chose d'important. Essentiel à votre existence. Aussi important qu'un tigre. Sinon, vous aurez une lutte sans fin avec votre cerveau, ce qui évite par tous les moyens de vous souvenir de nouvelles informations. Alors, comment CONVAINCRE votre cerveau que la programmation JavaScript est tout aussi importante qu'un tigre ? Il existe un moyen lent et ennuyeux, et il existe un moyen rapide et efficace. La première est basée sur la répétition brutale. Tout le monde sait que même les informations les plus ennuyeuses peuvent être mémorisées si vous les répétez encore et encore. Avec suffisamment de répétitions, votre cerveau pense : "Cela semble être insignifiant, mais puisque la même chose se répète tant de fois... D'accord, je vous ai persuadé." Un moyen rapide repose sur l'augmentation de l'activité cérébrale et surtout une combinaison de ses différents types. Il a été prouvé que tous les facteurs énumérés à la page précédente aident votre cerveau à travailler pour vous. Par exemple, des recherches ont montré que placer des mots à l'intérieur d'images (plutôt que dans les légendes, le corps du texte, etc.) amène le cerveau à analyser les liens entre le texte et les graphiques, ce qui conduit à l'activation Suite neurones. Plus de neurones signifie plus de chances que l'information soit considérée comme importante et mérite d'être rappelée. Le style de conversation est également important : les gens sont généralement plus attentifs lorsqu'ils sont impliqués dans une conversation, car ils doivent suivre le cours de la conversation et exprimer leur opinion. De plus, le cerveau ne se soucie pas du tout que vous « parliez » à un livre ! D'un autre côté, si le texte est sec et formel, le cerveau ressent la même chose que vous ressentez dans une conférence ennuyeuse en tant que participant passif. Le rend somnolent. Mais les dessins et le style conversationnel ne sont que le début. plus� 27 comment travailler avec ce livre Voici ce que NOUS avons fait : Nous avons utilisé des images parce que le cerveau perçoit mieux les graphiques que le texte. Du point de vue du cerveau, une image vaut 1024 mots. Et lorsque le texte est combiné avec des graphiques, nous intégrons le texte directement dans les dessins, de sorte que le cerveau fonctionne plus efficacement. Nous utilisons la redondance : répéter la même chose plusieurs fois, utiliser différents moyens de communication, faire appel à différents sens - tout cela pour augmenter la probabilité que le matériel soit encodé dans plusieurs zones de votre cerveau. Chien Espèce prototype : "Canine" bark() run() wag() ShowDog Prototype league : "Webville" stack() bait() gait() groom() ShowDog name : "Scotty" race : "Scottish Terrier" poids : 15 handler : "Cookie" Nous utilisons des concepts et des dessins de manière quelque peu inattendue car le cerveau absorbe mieux les nouvelles informations. De plus, les dessins et les idées ont généralement un contenu émotionnel car le cerveau prête attention à la biochimie des émotions. On se souvient mieux de ce qui nous fait ressentir, qu'il s'agisse d'une blague, d'une surprise ou d'un intérêt. Nous utilisons un style conversationnel car le cerveau absorbe mieux les informations lorsque vous participez à une conversation plutôt que d'écouter passivement une conférence. Cela se produit également lors de la lecture. De nombreux exercices sont inclus dans le livre, car le cerveau se souvient mieux quand vous faites quelque chose. Nous avons essayé de les rendre difficiles, mais intéressants - ce que la plupart des lecteurs préfèrent. Nous avons combiné plusieurs styles d'apprentissage, car certains lecteurs préfèrent les descriptions étape par étape, d'autres veulent d'abord présenter la « vue d'ensemble », et d'autres encore ont besoin d'un extrait de code. Quelles que soient vos préférences personnelles, il est utile de voir plusieurs options pour présenter le même matériel. Nous avons essayé d'utiliser les deux hémisphères de votre cerveau ; cela augmente la probabilité de maîtriser le matériau. Pendant qu'un côté du cerveau travaille, l'autre a souvent la possibilité de se reposer. cela augmente l'efficacité de la formation sur une longue période de temps. Le livre comprend également des histoires et des exercices qui reflètent d'autres points de vue. Le cerveau absorbe plus profondément les informations lorsqu'il doit évaluer et porter des jugements. Il y a souvent des questions dans le livre auxquelles on ne peut pas toujours répondre simplement, car le cerveau apprend plus vite et se souvient quand il doit faire quelque chose. Il est impossible de se muscler en regardant comment font les autres. Cependant, nous veillerons à ce que les efforts des lecteurs soient dirigés dans la bonne direction. Vous n'avez pas à vous casser la tête avec des exemples obscurs ou à gérer un jargon technique faux et sursaturé ou un texte trop concis. Il y a des gens dans des histoires, des exemples, des images - parce que vous êtes aussi une personne. Et votre cerveau accorde plus d'attention aux personnes qu'aux objets inanimés. Nous utilisons le principe 80/20. Si vous voulez devenir un excellent développeur JavaScript, ce livre est le seul pour vous. Dans ce document, nous n'essayons pas de parler de tout - seulement de ce qui est vraiment nécessaire. 28 intro DEVENEZ UN Navigateur POINTS CLÉS Puzzles intro Ce que VOUS pouvez faire pour que votre cerveau obéisse Nous avons fait notre travail. Le reste dépend de toi. Ces conseils seront le point de départ ; écoutez votre cerveau et déterminez ce qui vous convient et ce qui ne vous convient pas. Essayer quelque chose de nouveau. Découpez-le et fixez-le au réfrigérateur. 1 Prenez votre temps. Plus vous comprenez, moins vous devez mémoriser. 6 Il ne suffit pas de lire. Quand un livre vous pose une question, ne sautez pas à la réponse. Imaginez que quelqu'un vous pose réellement une question. Plus votre cerveau pense profondément, plus vite vous comprendrez et vous souviendrez de la matière. 7 2 Faites des exercices, prenez des notes. Nous avons inclus des exercices dans le livre, mais nous n'allons pas les faire pour vous. Et ne regardez pas les exercices. Prenez un crayon et écrivez. Les actions physiques pendant l'exercice augmentent son efficacité. 3 Lisez les encadrés. 4 Ne lisez pas d'autres livres, mettez celui-ci de côté avant d'aller vous coucher. 5 Buvez de l'eau. Et plus. Le cerveau fonctionne mieux dans des conditions d'humidité élevée. La déshydratation (peut survenir avant même que vous n'ayez soif) réduit la fonction cognitive. La parole active d'autres parties du cerveau. Si vous essayez de mieux comprendre ou de mieux vous souvenir de quelque chose, dites-le à haute voix. Mieux encore, essayez d'expliquer à quelqu'un d'autre. Vous apprendrez le matériel plus rapidement et, peut-être, découvrirez quelque chose de nouveau par vous-même. Écoutez votre cerveau. Surveillez quand votre cerveau commence à se fatiguer. Si vous devenez superficiel dans le matériel ou oubliez ce que vous venez de lire, il est temps de faire une pause. 8 Ressentez ! 9 Créez ! Cela signifie : tout lire. Les inserts font partie du matériau principal ! Ne les sautez pas. Une partie de l'apprentissage (en particulier le transfert d'informations dans la mémoire à long terme) se produit après la fermeture du livre. Votre cerveau ne traite pas les informations immédiatement. Si de nouvelles informations arrivent pendant le traitement, une partie de ce que vous avez appris précédemment peut être perdue. Parle à haute voix. Votre cerveau a besoin de savoir que le contenu du livre est vraiment important. Ressentez les héros de nos histoires. Créez vos propres légendes de photos. Grimacer à une mauvaise blague est toujours mieux que de ne rien ressentir. Essayez d'appliquer de nouvelles connaissances dans votre travail quotidien. Faites simplement quelque chose pour acquérir une expérience pratique en dehors des exercices. Il suffit d'un crayon et d'une tâche adaptée... Une tâche où l'utilisation de JavaScript peut être utile. 10 Dormir. Pour apprendre à programmer, vous devez créer de nombreuses nouvelles connexions dans votre cerveau. Dormir plus souvent, c'est bien. plus� 29 comment utiliser ce livre Remarque : Il s'agit d'un manuel, pas d'un ouvrage de référence. Nous avons délibérément retiré du livre tout ce qui pourrait interférer avec l'étude de la matière sur laquelle vous travaillez. Et lorsque vous lisez un livre pour la première fois, vous devez commencer dès le début, car le livre suppose que le lecteur possède certaines connaissances et expériences. Nous décrivons les BONS côtés de JavaScript et avertissons des MAUVAIS. Le langage de programmation JavaScript n'est pas né dans le milieu universitaire ni passé par une phase éclairée d'examen par les pairs. Il est venu dans ce monde par nécessité et a grandi dans l'environnement hostile des premiers navigateurs. Soyez averti : JavaScript a beaucoup de bonnes choses, mais il y en a d'autres, pas si bonnes. Mais dans l'ensemble, JavaScript est un excellent langage pour ceux qui savent l'utiliser à bon escient. Dans ce livre, nous vous apprendrons à utiliser efficacement vos bons côtés, vous indiquerons les pièges possibles et vous conseillerons sur la meilleure façon de les contourner. Nous n'essayons pas de décrire en détail tous les aspects de la langue. JavaScript est un sujet assez vaste. Ce livre ne doit pas être considéré comme un ouvrage de référence; ceci est un tutoriel qui ne couvre pas tout ce qu'il y a à savoir sur JavaScript. Nous voulons vous enseigner les bases de JavaScript afin que vous puissiez prendre n'importe quelle ancienne référence et faire ce que vous voulez avec JavaScript. Ce livre enseigne en utilisant Javascript dans les navigateurs. Le navigateur est non seulement l'environnement le plus typique pour exécuter du code JavaScript, mais aussi le plus pratique (tout le monde a un ordinateur avec un éditeur de texte et un navigateur, et rien de plus n'est nécessaire pour démarrer avec JavaScript). L'exécution de JavaScript dans le navigateur signifie également une réponse instantanée ; pour voir comment fonctionne le code que vous avez écrit, il vous suffit de recharger la page Web. Le livre encourage l'écriture de code bien structuré et lisible. Le code doit être écrit d'une manière qui le rende facile à lire et à comprendre pour d'autres personnes, et fonctionne également dans les navigateurs qui sortiront l'année prochaine. Il doit être aussi simple et direct que possible afin que vous fassiez le travail et que vous puissiez passer à autre chose. Dans ce livre, nous allons vous apprendre à écrire un code simple et bien structuré qui peut s'adapter aux changements futurs - un code dont vous pouvez être fier, encadrer et accrocher au mur. Nous vous recommandons d'utiliser différents navigateurs. Nous vous apprenons à écrire du JavaScript basé sur des normes, et pourtant vous rencontrerez probablement des différences mineures dans la façon dont JavaScript est interprété par différents navigateurs. Bien que nous nous soyons assurés que le code ci-dessous fonctionne dans tous les navigateurs modernes, et que nous vous montrerons même quelques astuces pour vous assurer que le code est pris en charge par ces navigateurs, nous vous encourageons à choisir quelques navigateurs et à tester votre Code JavaScript en eux. De cette façon, vous apprendrez à voir les différences entre les navigateurs et à créer du code JavaScript qui fonctionnera bien dans différents navigateurs avec des résultats cohérents. 30 introduction introduction La programmation est une affaire sérieuse. Vous devrez travailler, parfois très dur. Si vous avez déjà de l'expérience programmation pratique alors vous savez de quoi nous parlons. Si vous avez choisi ce livre après avoir appris HTML, XHTML et CSS, sachez que le code que vous devrez écrire ici semble... un peu différent. La programmation nécessite un état d'esprit particulier. C'est logique, parfois extrêmement abstrait et algorithmique. Ne vous inquiétez pas, nous essaierons de rendre le processus d'apprentissage aussi agréable que possible pour votre cerveau. Bougez lentement, mangez bien et dormez beaucoup - et de nouveaux concepts s'intégreront dans votre tête. L'exercice est OBLIGATOIRE. Les exercices font partie du matériel principal du livre. Certains exercices contribuent à la mémorisation de la matière, d'autres aident à mieux la comprendre, d'autres sont centrés dessus. utilisation pratique. Ne sautez pas d'exercices. La répétition est intentionnelle. Les livres de cette série ont une caractéristique fondamentale : nous voulons que vous compreniez vraiment bien la matière. Et que tu te souviennes de tout ce que tu as appris. La plupart des ouvrages de référence ne visent pas une mémorisation réussie, mais il ne s'agit pas d'un ouvrage de référence, mais d'un manuel, donc certains concepts sont présentés plusieurs fois dans le livre. Les exemples ont été rendus aussi compacts que possible. Nos lecteurs n'aiment pas parcourir 200 lignes de code dans des exemples pour trouver les deux lignes vraiment importantes. La plupart des exemples du livre sont donnés dans le moins de contexte possible pour que la partie que vous apprenez soit simple et descriptive. Ne vous attendez pas à ce que tous les exemples soient bien débogués ou complétés jusqu'au bout - ils sont faits à des fins éducatives et n'ont pas toujours toutes les fonctionnalités. Tous les exemples de fichiers sont disponibles en ligne. Vous pouvez les trouver sur http://wickedlysmart.com/hfjs. Les exercices de Mind Games n'ont pas de réponses. Dans certains d'entre eux, il n'y a pas de réponse correcte du tout, dans d'autres, vous devez décider vous-même de la justesse de vos réponses (cela fait partie du processus d'apprentissage). Certains des exercices de Mind Games fournissent des conseils pour vous aider à trouver la bonne direction. plus� 31 comment travailler avec ce livre Nous ne fournissons souvent que du code sans balisage. Après les deux premiers chapitres, nous ne montrons souvent que le code JavaScript, en supposant qu'il est empaqueté dans le balisage HTML. Ci-dessous est pages simples HTML qui peut être utilisé avec la plupart du code du livre. Si un balisage HTML différent doit être utilisé quelque part, nous vous en informerons : Votre page HTML Tout le contenu de la page Web est hébergé ici. Ne t'en fais pas; Nous vous expliquerons tout au début du livre. Exemples de code, support et discussions Tout le matériel de support requis est disponible sur http://wickedlysmart.com/hfjs. Il contient des exemples de code et du matériel supplémentaire, y compris des vidéos. 32 introduction introduction Ces gars-là sont tout simplement géniaux; ils sont restés avec nous tout au long du processus d'examen et ont partagé des informations inestimables des informations détaillées de tout! Rédacteurs scientifiques de St. Jeff Ismael Martin Bing Demiddel Frank D. Moore Alfred J. Speller Bruce Forkus Javie Ruedas Merci à toute notre incroyable équipe d'évaluation par les pairs ! Ce livre a été évalué par des pairs plus largement que n'importe lequel de nos livres précédents. Plus de 270 personnes qui ont rejoint notre programme WickedlySmart Insiders ont participé à la relecture et à la critique en direct du livre pendant le processus d'écriture. Le système a mieux fonctionné que prévu et a affecté presque tous les aspects du livre. Nous exprimons notre sincère gratitude à tous les participants; Grâce à vous, le livre est devenu bien meilleur qu'il n'aurait pu l'être. Les éditeurs scientifiques illustrés ci-dessus ont fourni des informations particulièrement précieuses et des contributions importantes au livre. En plus d'eux, nous avons été assistés par : Galina Orlova, J. Patrick Kelly, Klaus-Peter Kahl, Rob Cleary, Rebecca Dunn-Crane, Olaf Schenrich, Jim Kupek, Matthew M. Hanrahan, Russell Allyn-Willems, Christine J. Wilson, Louis-Philippe Breton, Timo Glaser, Sharmaine Gray, Lee Beckham, Michael Murphy, Dave Young, Don Smallage, Alan Rusiak, Eric R. Lisinski, Brent Fazekas, Sue Starr, Eric (Orange Pants) Johnson, Jess Palmer, Manabu Kawakami, Alan McIvor, Alex Kelly, Yvonne Bixel Truon, Austin Troup, Tim Williams, J. Albert Bowden II, Rod Shelton, Nancy DeHaven Hall, Sue McGee, Francisco Debs, Miriam Berkland, Christine Grekko, Elhadji Barry, Athanasios Valsamakis, Peter Casey, Dustin Wallem et Robb Curry. plus� 33 Remerciements de l'équipe de révision* Cher David Powers Nous sommes également extrêmement reconnaissants à notre estimé rédacteur scientifique, David Powers. En vérité, nous n'écrivons pas du tout sans la contribution de David - il nous a trop souvent épargnés d'éventuels ennuis. David nous aide (ou plutôt nous oblige) à rendre le livre plus significatif et techniquement précis, et son deuxième métier de comédien amateur est bien pratique lorsque nous écrivons les parties non sérieuses du livre. Merci encore David - vous êtes un vrai professionnel et nous dormons mieux la nuit en sachant que le livre a passé votre revue technique. À O'Reilly : Un immense et gigantesque merci à notre éditrice, Megan Blanchett, qui a ouvert la voie à ce livre. Ne laissez pas ce sourire vous guider dans le livre, a tout égaré, cet homme est un obstacle, patient et professionnel. Livily a attendu et sacrifié les loisirs familiaux pour son achèvement. Cela nous aide également à garder notre santé mentale dans notre relation avec O'Reilly (et O'Reilly dans leur relation avec nous). Nous vous aimons et nous ne pouvons pas attendre pour notre prochain projet ensemble! Megan Blanchett Un autre bonjour amical à notre rédacteur en chef Mike Hendrickson, qui a activement promu ce livre depuis le tout début. Merci Mike ; aucun de nos livres n'aurait été publié sans votre participation. Vous êtes notre leader depuis plus de dix ans et nous vous aimons! *Le grand nombre de remerciements est facile à expliquer : nous testons la théorie selon laquelle toute personne mentionnée dans la section des remerciements achètera au moins un exemplaire du livre (peut-être plus) pour ses proches et ses amis. Si vous voulez que nous vous remerciions dans notre prochain livre et que vous avez une grande famille, écrivez-nous. 34 introduction Mike Hendrickson introduction Aux membres O'Reilly : Nous remercions sincèrement toute l'équipe O'Reilly : Melanie Yarbrough, Bob Pfahler et Dan Foxsmith, qui ont façonné ce livre ; Ed Stevenson, Hugett Barrier et Leslie Crandell qui ont dirigé le marketing - nous avons apprécié leur approche commerciale originale. Merci à Ellie Volkhakusen, Randy Kamer et Karen Montgomery pour le design élégant de la couverture qui continue de bien nous servir. Comme d'habitude, merci à Rachel Monahan pour le montage sans compromis (et ses encouragements) et à Bert Bates pour ses commentaires exceptionnellement utiles. plus� 35 1 première rencontre avec javascript Dans des eaux inconnues Entrez, l'eau est tout simplement géniale ! Nous allons jeter un coup d'œil rapide à JavaScript, écrire le premier code, l'exécuter et voir comment il fonctionne dans le navigateur ! JavaScript ouvre des possibilités fantastiques. JavaScript, le principal langage de programmation du World Wide Web, vous permet de définir un comportement étendu dans les pages Web. Oubliez les pages sèches, ennuyeuses et statiques qui ne prennent que de l'espace sur l'écran - avec JavaScript, vous interagirez avec les utilisateurs, réagirez aux événements, recevrez et utiliserez des données d'Internet, afficherez des graphiques... et bien plus encore. Avec une bonne connaissance de JavaScript, vous pouvez même programmer des comportements complètement nouveaux sur vos pages. Et n'hésitez pas, vos connaissances seront recherchées. Désormais, JavaScript n'est pas seulement l'un des langages de programmation les plus populaires, mais il est pris en charge par tous les navigateurs modernes (et de nombreux navigateurs non modernes); de plus, des implémentations JavaScript intégrées sont apparues qui existent séparément des navigateurs. Quoi qu'il en soit, assez parlé. Il est temps de se mettre au travail ! fonctionnement de javascript Fonctionnement de JavaScript Vous maîtrisez la création de la structure, du contenu, de la mise en page et du style des pages Web. Est-il temps de leur ajouter du comportement ? De nos jours, une page que vous ne pouvez que regarder n'intéresse personne. Les bonnes pages doivent être dynamiques et interactives, et elles doivent interagir avec les utilisateurs de nouvelles manières. C'est à cela que sert JavaScript. Voyons d'abord où se situe JavaScript dans l'écosystème des pages Web : HTML Vous savez déjà que le langage HTML (Hypertext Markup Language) est utilisé pour définir le contenu des pages, ainsi que leur structure : paragraphes, en-têtes et sections. JS 38  Chapitre 1 Navigateur CSS Vous savez que les tableaux en cascade sont utilisés pour afficher le balisage HTML. style css(Cascading Style Sheets) - couleurs, polices, bordures, mise en page... CSS définit un style distinct de la structure de la page. Alors, familiarisez-vous avec : JavaScript, parent de HTML et CSS. JavaScript est capable de déterminer le comportement des pages Web. Besoin de réagir lorsqu'un utilisateur clique sur le bouton "La vente se termine dans 30 secondes !" ? Vérifier rapidement le contenu d'un champ de texte contenant des données importantes ? Télécharger les messages de Twitter et les afficher sur la page ? Ou peut-être voulez-vous jouer? JavaScript vient à la rescousse. Vous pouvez ajouter du code de programme à la page qui effectuera des calculs, répondra aux événements, dessinera, transférera des données, signalera, mettra à jour des informations, modifiera ... En un mot, toutes les opérations dynamiques - JavaScript peut faire tout cela. débuter avec javascript Comment JavaScript est écrit JavaScript occupe une place particulière dans le monde de la programmation. Comment se présente un programme classique typique ? Vous écrivez du code, le compilez, le liez et l'installez sur votre ordinateur. Le langage JavaScript est beaucoup plus flexible et dynamique. Le programmeur inclut le code JavaScript directement dans la page, puis le charge dans le navigateur. De plus, le navigateur lui-même fera tout le nécessaire pour exécuter le code écrit. Examinons de plus près le fonctionnement de ce schéma : CSS glace

Saveurs de glace

49 saveurs

Toutes vos saveurs préférées !

Ecrire du code 1 La page est créée comme d'habitude, avec un contenu HTML et un style CSS. Le code JavaScript est ajouté à la page. Comme vous le verrez bientôt, comme pour HTML et CSS, vous pouvez mettre tous les composants dans un seul fichier, ou vous pouvez séparer le code JavaScript dans un fichier séparé qui est inclus dans la page. Nous verrons quelle est la meilleure solution sous peu... Navigateur Navigateur Chargement En cours d'exécution 2 Ouvrez la page dans un navigateur. Après avoir trouvé le code JavaScript dans la page, le navigateur commence immédiatement à l'analyser et à le préparer pour son exécution. Comme avec HTML et CSS, si le navigateur détecte des erreurs dans JavaScript, il essaie de continuer à lire JavaScript, HTML et CSS. Le navigateur essaie d'éviter une situation dans laquelle l'utilisateur ne peut pas voir la page demandée. Pour l'avenir, le navigateur construit un "modèle objet" de la page HTML utilisable par le code JavaScript. Retenez bien ce fait, nous y reviendrons... 3 Le navigateur lance l'exécution du code dès qu'il le rencontre, et continue à s'exécuter tout au long du cycle de vie de la page. Contrairement aux versions précédentes, JavaScript moderne est très efficace et, grâce à des méthodes de compilation sophistiquées, le code est presque aussi rapide que les langages de programmation traditionnels. html head title body script h1 h2 p em next 4   39 incorporer du javascript dans une page Comment inclure du JavaScript dans une page Commençons par le début : pour progresser dans l'apprentissage de JavaScript, vous devez savoir comment inclure du code dans une page. Comment est-il fait? Bien sûr, avec l'élément Il contient un morceau de code JavaScript.

Juste une rubrique générique

Encore une fois, peu nous importe maintenant comment ce code fonctionne. Et pourtant... Regardez-le et devinez ce qui se passe dans chacune des lignes.

Pas grand chose à lire ici. Je suis juste un paragraphe obligatoire vivant dans un exemple dans un livre JavaScript. Je cherche quelque chose pour rendre ma vie plus excitante.

Test Drive Entrez le code de la page et enregistrez-le dans un fichier nommé "behavior.html". Chargez maintenant la page dans le navigateur (faites glisser et déposez le fichier dans la fenêtre du navigateur ou utilisez la commande Fichier > Ouvrir). Que fait notre code ? Astuce : pour comprendre cela, vous devez attendre cinq secondes. 40  chapitre 1 commencer avec javascript RELAX Nous créons probablement du code qui peut être utilisé ailleurs et lui donnons le nom "wakeUpUser" ? VOIR Ne vous inquiétez pas. Personne ne s'attend à ce que vous commenciez immédiatement à comprendre JavaScript comme vous le connaissez depuis votre enfance. Pour l'instant, il suffit d'imaginer à quoi ressemble JavaScript. Se détendre n'en vaut pas non plus la peine : vous avez besoin que votre cerveau fonctionne à pleine capacité. Vous souvenez-vous du code de la page précédente ? Essayons de deviner ce qui se passe dans chaque ligne : -something countdownsetTimeout(wakeUpUser, 5000); Quelles sont les secondes ici? Indice : le et gîte. function wakeUpUser() ( 1000 millisecondes = 1 sec ) alert("Allez-vous regarder cette page ennuyeuse pour toujours ?"); Tout est clair ici : un message s'affiche pour l'utilisateur. fréquemment Q : Foire aux questions Q : R : J'ai entendu dire que JavaScript était appelé un « langage jouet ». C'est vrai? Mon ami travaille avec JavaScript dans Photoshop... du moins c'est ce qu'il dit. Est-il possible? Au début, JavaScript n'était pas très puissant, mais ensuite son importance a augmenté et des ressources importantes (y compris l'esprit des meilleurs spécialistes) ont été consacrées à l'extension des capacités de JavaScript. Mais tu sais quoi? Même avant que JavaScript ne soit si rapide, c'était génial. Et comme vous le verrez bientôt, vous pouvez faire beaucoup de choses intéressantes avec. Oui, JavaScript est un langage de script universel et fait son chemin dans de nombreuses applications, des éditeurs graphiques aux programmes musicaux, et même dans le domaine de la programmation côté serveur. R : Q : R : JavaScript est-il lié à Java d'une quelconque manière ? Uniquement de nom. Le langage JavaScript a été créé au plus fort de la popularité de Java, et les développeurs JavaScript ont profité de cette circonstance. Les deux langages empruntent certains éléments de syntaxe aux langages de la famille C, mais sinon ils ont peu en commun. Q : JavaScript est donc le meilleur moyen de créer des pages dynamiques ? Qu'en est-il des solutions basées sur Flash ? R : Il fut un temps où Flash était considéré comme la technologie de choix pour créer des pages Web interactives et plus dynamiques, mais depuis lors, l'industrie a clairement commencé à évoluer vers la norme HTML5 avec JavaScript. Et avec HTML5, JavaScript est désormais le langage de script standard pour la programmation Web. Il y a maintenant beaucoup d'efforts et d'argent dépensés pour améliorer la vitesse et l'efficacité de JavaScript, ainsi que pour créer des API JavaScript qui étendent les fonctionnalités du navigateur. Q : Vous dites que beaucoup d'autres langages compilent. Qu'est-ce que c'est et pourquoi n'est-il pas en JavaScript ? R : Dans les langages de programmation traditionnels - C, C++ ou Java - le code est compilé avant l'exécution. Lors de la compilation, le code est converti en une représentation lisible par machine (et généralement optimisée en termes de vitesse). Les langages de script sont interprétés, ce qui signifie que le navigateur exécute chaque ligne de JavaScript dès qu'il la rencontre. Pour les langages de script, les performances d'exécution ne sont pas si importantes ; ils se concentrent davantage sur la construction de prototypes, programmation interactive avec une flexibilité maximale. C'était le cas avec les premières versions de JavaScript, pour cette raison, pendant de nombreuses années, la vitesse d'exécution du code était plutôt médiocre. Cependant, il y avait une option intermédiaire : un langage interprété compilé à la volée. C'est lui qui a été choisi par les développeurs de navigateurs pour les implémentations modernes de JavaScript. Essentiellement, en JavaScript, vous bénéficiez de toute la commodité des langages de script combinée à la rapidité d'un langage compilé. D'ailleurs, les mots « interpréter », « calculer » et « exécuter » sont souvent utilisés dans ce livre. Leur sens peut différer selon les contextes, mais pour nos besoins, ils sont effectivement équivalents. plus 4   41 histoire de javascript JavaScript, tu as parcouru un long chemin, bébé... JavaScript 1.0 Vous ne vous souvenez peut-être pas de Netscape, mais c'était le premier vrai développeur de navigateur. Au milieu des années 1990, le marché battait son plein (en particulier de la part de Microsoft), et l'ajout de nouvelles fonctionnalités intéressantes au navigateur était essentiel. Pour ce faire, Netscape a créé un langage de script permettant à quiconque d'inclure du code de script dans une page. C'est ainsi que LiveScript est né. Il y a de fortes chances que vous n'ayez jamais entendu parler de LiveScript, car au même moment, Sun Microsystems a introduit le langage Java et son stock a explosé. Pourquoi ne pas profiter du succès de quelqu'un d'autre ? Ainsi LiveScript est devenu JavaScript. Ces langues ont-elles quelque chose en commun ? Alors quoi... Mais qu'en est-il de Microsoft ? Peu de temps après Netscape, elle a créé son propre langage de script, qu'ils ont appelé... JScript. C'était en quelque sorte étrangement similaire à JavaScript. Ainsi commença la guerre des navigateurs. 1995 42  chapitre 1 JavaScript 1.3 Entre 1996 et 2000, le langage JavaScript a continué d'évoluer. Netscape a remis JavaScript pour la standardisation ; ainsi ECMAScript est né. Vous n'avez pas entendu parler d'ECMAScript ? Sachez simplement qu'il s'agit de la définition de langage standard pour toutes les implémentations JavaScript (navigateur et non navigateur). Pendant ce temps, les développeurs ont continué à se battre contre JavaScript (la guerre des navigateurs battait son plein), même si l'utilisation de JavaScript devenait de plus en plus courante. Et tandis que les différences subtiles entre JavaScript et JScript continuaient de gâcher la vie des développeurs, les deux langages se ressemblaient de plus en plus au fil du temps. JavaScript avait encore la réputation d'être un "langage amateur", mais cela a vite changé... 2000 JavaScript 1.8.5 Enfin, JavaScript a atteint sa maturité et a gagné la reconnaissance des développeurs professionnels ! Alors que certains diront qu'il s'agissait de l'émergence d'un standard robuste (comme ECMAScript 5) qui est maintenant implémenté dans tous les navigateurs modernes, la réalité est que Google a beaucoup contribué à l'entrée de JavaScript dans l'arène professionnelle. En 2005, Google Maps a montré au monde ce que JavaScript peut faire pour créer des pages Web dynamiques. Les meilleurs esprits dans le domaine de la programmation ont travaillé à l'amélioration des interpréteurs JavaScript et à l'augmentation de la vitesse d'exécution du code. La syntaxe a peu changé au cours de l'évolution de JavaScript dans son ensemble. Malgré tout le tapage qui a accompagné sa naissance, JavaScript s'est avéré être un langage puissant et expressif. 2012 première rencontre avec javascript Prenez un crayon Voyez comme il est facile d'écrire du code JavaScript var price = 28.99; var remise = 10 ; Vous ne connaissez pas encore JavaScript, mais vous pouvez probablement deviner au moins en termes généraux comment son code fonctionne. Regardez chaque ligne et essayez de deviner ce qu'elle fait. Notez vos réponses. Nous fournissons une réponse pour vous faciliter la tâche. Et si la tâche s'avère écrasante, les réponses sont données à la page suivante. Créez une variable de prix et attribuez-lui la valeur 28,99. var total = prix - (prix * (remise / 100)); if (total > 25) ( freeShipping(); ) var count = 10; while (count > 0) ( juggle(); count = count - 1; ) var dog = (name: "Rover", weight: 35); if (dog.weight > 30) ( alert("WOOF WOOF"); ) else ( alert("woof woof"); ) var circleRadius = 20; var circleArea = Math.PI * (circleRadius * circleRadius); suivant 4   43 solution d'exercice Voyez comme il est facile d'écrire du code JavaScript var prix = 28,99; var remise = 10 ; var total = prix - (prix * (remise / 100)); if (total > 25) ( freeShipping(); ) var count = 10; while (count > 0) ( juggle(); count = count - 1; ) Prenez un crayon Solution Vous ne connaissez pas encore JavaScript, mais vous pouvez au moins avoir une idée approximative du fonctionnement de JavaScript. Regardez chaque ligne et essayez de deviner ce qu'elle fait. Notez vos réponses. Nous avons inclus une réponse pour vous faciliter la tâche. Alors les réponses. Créez une variable de prix et attribuez-lui la valeur 28,99. Créez une variable de remise et affectez-lui la valeur 10. Calculez le prix remisé et affectez la variable totale. Comparez le total de la variable et 25. Si la variable est supérieure... ...exécutez l'extrait de code freeShipping. Fin de l'instruction if Créez la variable count et définissez-la sur 10. Tant que count est supérieur à 0... ...faites quelque chose, alors... ...décrémentez count de 1. Fin de la boucle while Créez une variable dog avec les attributs name Et poids. var chien = (nom : "Rover", poids : 35); if (dog.weight > 30) ( alert("WOOF WOOF"); ) else ( alert("woof woof"); ) var circleRadius = 20; var zonecirculaire = Math. PI * (rayoncercle * rayoncercle); 44  chapitre 1 Si l'attribut weight est supérieur à 30... ...imprimer le message "WOOF WOOF" sur la page web Sinon... ...imprimer le message "woof woof" sur la page web Fin de si/ commande else Créez la variable circleRadius et donnez-lui la valeur 20. Créez une variable appelée circleArea... ...et donnez-lui le résultat de l'expression (1256.6370614359173) JavaScript d'abord Si vous ne voulez pas être limité au web statique normal pages, vous ne pouvez pas vous passer de JavaScript. Et c'est vrai. Les pages construites avec HTML et CSS peuvent bien paraître. Mais en apprenant JavaScript, vous pouvez créer des types de pages complètement nouveaux. De plus, il serait plus correct de les considérer non pas comme des pages ordinaires, mais comme des applications A en même temps ! et podzaraDe quoi parlez-vous? « Bien sûr, je le sais très bien, sinon pourquoi aurais-je lu ce livre ? » En fait, nous voulions profiter de l'occasion pour parler un peu de l'apprentissage de JavaScript. Si vous avez déjà de l'expérience dans n'importe quel langage de programmation ou de script, vous avez une idée approximative de ce qui vous attend. Si jusqu'à présent vous étiez limité au HTML et au CSS, sachez que lorsque vous apprendrez un langage de programmation, vous découvrirez quelque chose de fondamentalement nouveau. robot ! En HTML et CSS, les opérations déclaratives sont principalement effectuées. Supposons que vous déclariez qu'un texte de paragraphe ou tous les éléments de la classe "vente" doivent être colorés en rouge. JavaScript ajoute un nouveau comportement à la page, et pour cela, vous devez décrire les calculs. Il vous faudra les moyens de décrire diverses opérations : "calculer le score du joueur en additionnant le nombre de points", ou "répéter dix fois l'action suivante", ou encore "lorsque l'utilisateur appuie sur ce bouton, jouer à tel ou tel signal sonore», ou même « allez sur Twitter, obtenez le dernier message et publiez-le sur cette page ». Le langage nécessaire pour résoudre de tels problèmes est très différent du HTML et du CSS. Voyons ce qu'il en est exactement… suivant 4   45 commandes javascript Comment les commandes sont créées Lorsque vous créez du contenu HTML, vous balisez généralement le texte en définissant sa structure ; Pour ce faire, des éléments, attributs et valeurs sont ajoutés au texte :

Moka Caffé Latte

Espresso, lait cuit à la vapeur et sirop de chocolat, comme vous l'aimez.

Lorsque vous travaillez avec HTML, nous marquons le texte pour définir la structure : ici, nous avons un exemple : "Donc, il y a un gros titre suivi d'un paragraphe de texte normal." Avec CSS, les choses sont un peu différentes. Le développeur écrit un ensemble de règles ; chaque règle sélectionne des éléments de page, puis définit un ensemble de styles pour ces éléments : h1.drink ( ) p ( ) color: brown; avec des sélecteurs Pour CSS, les règles sont écrites en séparant, def p), et k drin (par exemple, h1. L applique HTM à quelles parties du balisage ce style est appliqué. Disons que tous les en-têtes drink sont affichés en marron ... . .. Et les paragraphes sont affichés en police sans empattement font-family : sans-serif ; le code JavaScript est constitué de commandes. Chaque commande décrit une petite partie de l'opération à effectuer, et l'ensemble des commandes détermine le comportement de la page : Jeu de commandes. var age = 25; var name = "Owen"; if (age > 14) ( Chaque commande fait une petite partie du travail, comme déclarer des variables qui stockeront les valeurs utilisées. Nous créons une variable pour enregistrer l'âge (25 ans). Nous aurons également besoin d'une variable pour le nom "Owen". La valeur de la variable peut être utilisée pour prendre des décisions alert("Désolé, cette page est réservée aux enfants !"); ) else ( ) alert ("Bienvenue " + nom + "!"); 46  chapitre 1 , dans notre exemple, Owen a 25 ans, donc le message le sens n'est pas émis). Si plus, nous signalons que l'utilisateur est trop vieux pour cette page. Premiers pas avec les variables et les valeurs JavaScript Vous avez peut-être remarqué que les variables sont couramment utilisées dans les programmes JavaScript. Les variables sont destinées à stocker des valeurs. Quoi? Regardons quelques exemples : var name = "Duke"; uk e” La variable isEligible est définie sur false. Variables, sans var isEligible = false; qui prennent deux valeurs, vrai et faux (vrai/faux), sont dites logiques (ou booléennes). «D gagnants La variable se voit attribuer une séquence de caractères (une telle séquence s'appelle une chaîne). fal se var gagnants = 2 ; 2 Cette équipe annonce le nom des gagnants 2. Name isEligible Name isEligible En l'honneur du mathématicien George Boole. En plus des nombres, des chaînes et des booléens, les variables peuvent stocker d'autres données. Nous y reviendrons sous peu, mais quel que soit le type de données, toutes les variables sont créées selon les mêmes règles. Examinons de plus près la déclaration de variable : Une déclaration de variable commence toujours par le mot-clé var. Notez que les valeurs booléennes ne sont pas entre guillemets. AUCUNE EXCEPTION! Même si JavaScript ne se plaint pas que vous avez manqué var. Vous verrez bientôt pourquoi... Vient ensuite le nom de la variable. var gagnants = 2 ; Une commande d'affectation se termine toujours par un point-virgule. Enfin, vous pouvez éventuellement spécifier une valeur initiale pour la variable ; cela se fait avec un signe égal suivi d'une valeur. Nous disons "facultatif" car, à proprement parler, vous pouvez créer une variable sans valeur initiale et l'affecter ultérieurement. Pour cela, il suffit de supprimer l'affectation de la commande : var losers; Si une variable est déclarée sans signe égal ni valeur, vous allez simplement l'utiliser d'une manière ou d'une autre à l'avenir. Aucune valeur? Et comment vivre maintenant ?! C'est juste humiliant. perdants suivant 4   47 mots-clés javascript Méfiez-vous des mots-clés ! Une variable a un nom et une variable a une valeur. Vous savez également que les variables peuvent stocker des nombres, des chaînes et des booléens (et plus). Mais comment choisir un nom de variable ? N'importe quel nom fera l'affaire ? Non, mais trouver un nom valide est facile. Il suffit de s'assurer que le nom de la variable n'enfreint pas deux règles simples : 1 Le nom de la variable doit commencer par une lettre, un trait de soulignement ou un signe dollar. 2 Des lettres, des chiffres, des traits de soulignement et des signes dollar peuvent suivre, dans n'importe quel nombre. Oh, et encore une chose : ne confondez pas JavaScript et utilisez des mots-clés intégrés tels que var, function ou false comme noms de variables. Ces noms sont également hors liste. Dans ce livre, nous passerons en revue quelques mots-clés supplémentaires et découvrirons ce qu'ils signifient, mais pour l'instant nous nous en tiendrons à une courte liste : break delete pour laisser super void case do function new switch while catch else if package this with classe enum implémente privé jeter rendement const exporter importer protégé vrai continuer s'étendre en public essayer débogueur faux instanceof retour typeof défaut enfin interface statique var souvent Q: A: Qu'est-ce qu'un "mot-clé" ? Le mot-clé est l'un des mots réservés du langage JavaScript. JavaScript utilise ces mots à ses propres fins. Si vous commencez à les utiliser comme noms de variables, vous ne ferez que confondre votre navigateur. 48  chapitre 1 Q : Poser des questions Que se passe-t-il si le mot-clé est inclus dans un nom de variable ? Par exemple, puis-je créer une variable appelée ifOnly (c'est-à-dire une variable dont le nom contient le mot clé if) ? B : Bien sûr que vous pouvez. Seules les correspondances exactes sont autorisées. Il est souhaitable que votre code soit simple et compréhensible, donc l'utilisation de noms comme elze est également indésirable - il est facile de les confondre avec else. Q : JavaScript est-il sensible à la casse ? En d'autres termes, myvariable et MyVariable sont-ils la même chose ? R : Si vous avez travaillé avec le balisage HTML, vous êtes probablement habitué au fait que les caractères ne sont pas sensibles à la casse ; après tout, pour la balise du navigateur pas différent de . Mais JavaScript est sensible à la casse dans les noms de variables, les mots clés, les noms de fonctions... Bref, presque partout. Attention donc aux majuscules et minuscules ! débuter avec javascript WEBVILLE T I M E S Comment éviter les erreurs de nommage gênantes Le choix des noms étant trop large, nous allons donner quelques recommandations extrêmement ambiguës. Juste le feu d'un dragon qui respire. si gonflement JavaScript. de nombreux ennuis, vous sauver d'une lettre, commencer par des majuscules : chaque mot, qui est utilisé, bien que certains des noms changent de la lettre : de deux oH ea de dD nyh, commencez Choisissez des noms significatifs. rag on With Fi re. "Nous sommes fiers de ceux qui sont avec _, nous ne sommes pas reco ta poster populaire et peut-être que les noms _m ont accès à toi pas pour que ça tombe, si seulement c'est très lourd de commencer pour toi, mais, $, r et foo créez quelque chose avec une flexibilité de nom pour les rangs (quand et quand le temps se produit, alors personne d'autre ne pourra les comprendre eux-mêmes. Noms un yme). À mon avis, currentPressure et pastExam n'ont pas d'autres similitudes. Soo st - Soyez prudent. Les noms sont écrits dans les temps modernes, mais ne seront tout simplement pas oubliés, mais "g, soyez sensible à la casse" est devenu beaucoup plus prudent et rendra votre code distribué Wounded variables. Par s avec le choix des noms est intelligible. (y compris ceux à l'arrière, nous avons donné des limites JavaScript) Enregistré Utilisez les mêmes noms qui commencent par seulement quelques mots. rappelez-vous simplement : les abandons avec _ et $ ne sont autorisés que dans certains cas particuliers. en direct restez des noms clairs, un instant loin de la clé dont vous avez besoin pour les choisir pour vous Les mots de nom et les variables variables indiquent toujours une variable, pour avec $, généralement barré, commençant par Toutes les variables nommées var lorsqu'elles sont déclarées sont déchirées pour bio. b A propos de la syntaxe Chaque commande se termine par un caractère « ; ». x = x + 1 ; Un commentaire d'une seule ligne commence par deux barres obliques (//). Les commentaires contiennent uniquement des informations sur le code pour vous et les autres développeurs. Ils ne sont pas inclus dans le programme. // Ceci est un commentaire espaces supplémentaires autorisé (presque partout). x=2233 ; Les chaînes doivent être entourées de guillemets doubles (ou de guillemets simples, mais choisissez-en un - soyez cohérent). "Vous règles!" "Et toi aussi!" Les valeurs booléennes true et false sont écrites sans guillemets. basculer=vrai ; Il n'est pas nécessaire d'attribuer une valeur aux variables lorsqu'elles sont déclarées : var width; JavaScript, contrairement au balisage HTML, est sensible à la casse. En d'autres termes, Compteur et compteur sont des variables différentes. suivant 4   49 exercices syntaxiques DEVENIR un navigateur Ci-dessous le code JavaScript qui contient des erreurs. Imaginez-vous à la place du navigateur et essayez de trouver des erreurs dans le code. Et quand c'est fait, regardez les réponses à la fin du chapitre et voyez si vous avez oublié quelque chose. A // Test des blagues var joke = "JavaScript est entré dans un bar...."; Ne vous inquiétez pas de ce que fait ce morceau de JavaScript pour le moment ; essayez simplement de trouver des erreurs dans les variables et la syntaxe. ditBlague = "faux" ; var $punchline = "Mieux vaut faire attention à ces points-virgules." var %entage = 20 ; var result if (toldJoke = = true) ( ​​​​Alert($punchline); ) else ) alert(joke); B \\ Movie Night var code postal = 98104; var joe"sFavoriteMovie = Forbidden Planet; var movieTicket$ = 9; if (movieTicket$ >= 9) ( alert("Trop!"); ) else ( ) 50  chapter 1 alert("Nous allons voir" + joe"sFavoriteMovie); première introduction à javascript Soyez prudent avec les expressions ! Pour exprimer une intention en JavaScript, vous avez besoin d'expressions. Chaque expression est évaluée et le résultat est une valeur. Nous avons déjà rencontré des expressions dans des exemples de code. Regardons l'expression dans la commande suivante : Command JavaScript affecte le résultat calculé à la variable total.Le signe * est utilisé pour i.no business pour le couteau, et / - var total = price - (price * (discount / 100)); si vous avez déjà suivi des cours de mathématiques, bilan ou payé des impôts, vous trouverez sûrement des expressions numériques familières. Si variable, 10 ème valeur il contient discount - 20, le résultat est 8. e est égal à tat bud Il existe également des expressions de chaîne : i "in nouvelle ligne"Cher, ces chaînes" sont concaténées par concaténation). appelé Reader" (une telle opération "Cher " + "Reader" + "," est incluse dans la même chose, mais dans l'expression. Lors du calcul de rock, la chaîne entière contenant g est "supercalifra "super" + "cali" + youKnowTheRest du résultat devient ilisticexpialidocious". * phoneNumber.substring(0,3) Un autre exemple d'expression qui renvoie une chaîne. Nous parlerons de son fonctionnement plus tard, mais pour l'instant, il suffit de dire que l'expression renvoie le l'indicatif régional d'un numéro de téléphone Le résultat du calcul peut aussi être vrai ou faux (vrai ou faux), ces expressions sont dites booléennes (ou logiques) Déterminez quel résultat (vrai ou faux) sera obtenu lorsque chacune des expressions suivantes est évalué : âge< 14 Если возраст (age) меньше 14, то результат равен true; в противном случае он равен false. Команда проверяет возраст пользователя. cost > = 3,99 animal = = "ours" Si le prix du bien est supérieur ou égal à 3,99, l'expression est vraie. Sinon c'est faux. Ne manquez pas la vente ! Vrai si le mot "ours" est présent dans le nom de l'animal. Le résultat d'une expression peut être une valeur d'un autre type ; nous reviendrons sur ce sujet. En attendant, il est important de savoir que lors de l'évaluation d'une expression, un certain résultat sera obtenu - un nombre, une chaîne ou une expression logique. Qu'est-ce que cela nous donne ? * Il est supposé que youKnowTheRest contient la chaîne "fragilisticexpialidocious". suivant 4   51 exercices avec des expressions Prends un crayon dans la main Prends un crayon. Pour chacune des expressions ci-dessus, calculez sa valeur et notez-la dans l'espace prévu. ÉCRIVEZ exactement... oubliez les mots de votre mère sur ce que vous ne pouvez pas écrire dans les livres, et écrivez la réponse sur la page ! Vous pouvez vérifier les réponses à la fin du chapitre. Calculatrice pour convertir la température de Celsius en Fahrenheit ? (9 / 5) * temp + 32 Expression booléenne. L'opérateur == vérifie si deux valeurs sont égales. color == "orange" name + ", " + "tu"as gagné !" tonNiveau > 5 Test : La première valeur est-elle supérieure à la seconde ? Vous pouvez utiliser l'opérateur >= pour conditionner "la première valeur est-elle supérieure ou égale à la seconde ?" (niveau * points) + couleur bonus != "orange" Que se passe-t-il si la variable temp vaut 10 ? __________ Cette expression est-elle vraie ou fausse si la variable couleur contient la valeur "rose" ? __________ Et si la valeur est "orange" ? __________ Quelle est la valeur que se passe-t-il si le nom de la variable contient la chaîne "Martha" ? _________________________________ Que se passe-t-il si la variable votreNiveau = 2 ? ________ Que se passe-t-il si la variable votreNiveau = 5 ? ________ Que se passe-t-il si la variable votreNiveau = 7 ? ________ Le variable niveau = 5, points = 30000 et bonus = 3300. Quel est le résultat du calcul ?________ Si la variable couleur contient la chaîne "rose", cette expression sera-t-elle vraie ou fausse ?__________ L'opérateur != vérifie que deux les valeurs ne sont PAS égales. Question la mieux notée ! 1000 + "108" 52  chapitre 1 Il y a plusieurs réponses, une seule est correcte, laquelle choisirez-vous ? ______________________ Pour les curieux, avez-vous remarqué que l'opérateur = est utilisé dans l'affectation et l'opérateur == dans le test ? lorsque vous attribuez une valeur à une variable, utilisez un signe égal = et lorsque vous vérifiez si deux valeurs correspondent, utilisez deux signes ==. Les programmeurs débutants confondent souvent ces opérateurs. débuter avec javascript while (jongler) ( ) keepBallsInAir(); Opérations répétées On est souvent amené à répéter les mêmes opérations : Rincer, cracher, recommencer. Mangez une autre cuillerée. Et puis plus. Prenez les bonbons de la boîte jusqu'à ce qu'ils soient épuisés. Bien sûr, dans les programmes, les opérations doivent également être répétées. JavaScript fournit plusieurs constructions syntaxiques pour ré-exécuter du code : while, for, for in et forEach. Avec le temps, nous examinerons tous ces types de boucles, mais pour l'instant, nous nous concentrerons sur while. Nous avons récemment examiné les expressions qui évaluent un résultat booléen (par exemple, scoops > 0). De telles expressions jouent un rôle clé dans les instructions while : une boucle while commence par le mot-clé while. La boucle while contient une expression booléenne appelée condition de continuation (ou simplement condition). Si la condition de boucle est vraie, alors le bloc de programme entier est exécuté. while (scoops > "); ) scoops = scoops - 1; Si la condition est vraie, alors après l'exécution du bloc de programme, la boucle revient au début et tout se répète. Si la condition est fausse, la boucle se termine . Qu'est-ce qu'un "bloc de programme" ? Toutes les 4   53 boucles javascript Fonctionnement de la boucle while Puisqu'il s'agit de votre première boucle while, examinons de plus près son exécution et comprenons parfaitement son fonctionnement. ajout d'une déclaration pour la variable scoops et initialisé avec la valeur 5. L'exécution du code commence. D'abord, la variable scoops (ice-cream scoops) reçoit la valeur 5. var scoops = 5; while (scoops > 0) ( document.write("Another scoop!
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); Le programme passe ensuite à l'instruction while. Lorsqu'une commande while est exécutée pour la première fois, le programme vérifie d'abord sa condition - est-elle vraie ou fausse ? cuillerées valeur var cuillerées = 5; Au dessus de zéro? Indubitablement! while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); Puisque la condition est vraie, l'exécution du bloc de programme commence. La première commande dans le corps de la boucle imprime la chaîne « Another scoop !
". var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); 54  chapitre 1 démarrer avec javascript La commande suivante décrémente la valeur actuelle de scoops de 1 et affecte le résultat (4) à la même variable scoops. 1 boule mangée, il en reste 4 ! var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); C'est la dernière commande du bloc. Le cycle revient au début et tout se répète. var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); La condition est vérifiée à nouveau ; cette fois, la variable scoops est de 4. Mais bien que la valeur des scoops ait diminué, elle est toujours supérieure à zéro. Beaucoup plus de var scoops = 5 ; la gauche! while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); Et encore la chaîne « Un autre scoop !
". var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); next 4   55 javascript while loop La commande suivante décrémente la valeur actuelle de scoops de 1 et affecte le résultat (3) à la même variable scoops. var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); C'est la dernière commande du bloc ; le programme revient à la condition et tout se répète à nouveau. var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); La condition est à nouveau testée, la variable scoops vaut 3. Elle est toujours supérieure à zéro. Les balles sont toujours var scoops = 5 ; resté ! while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); Le navigateur reçoit à nouveau la chaîne « Encore un scoop !
". var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); 56  chapitre 1 2 balles parties, 3 restantes ! javascript pour la première fois Ça continue encore et encore : chaque fois que la boucle est exécutée, scoops est décrémenté de 1, une autre ligne est imprimée dans le navigateur et le programme entre dans un autre cercle. 3 balles mangées, il en reste 2 ! var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); Et ça continue... 4 boules ont été mangées, 1 est restée ! var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); Jusqu'à la dernière fois... mais maintenant quelque chose a changé. La variable scoops est nulle et la condition est fausse. C'est là que tout se termine; la boucle ne doit plus être exécutée. Cette fois, le programme contourne le bloc et exécute l'instruction qui le suit. 5 boules mangées, il en reste 0 ! var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); La commande suivante exécute document.write et affiche la ligne "La vie sans glace n'est pas la même". Prêt! var écopes = 5 ; while (scoops > 0) ( document.write("Encore un scoop !
"); scoops = scoops - 1; ) document.write("La vie sans glace n"est plus la même"); 4   suivant 57 commandes javascript conditionnelles if (cashInWallet > 5) ( order = "Drink like this: cheeseburger, frites and cola"; ) else ( order = "Je vais prendre un verre d'eau"; ) Prise de décision JavaScript Vous avez déjà vu comment l'expression conditionnelle est utilisée pour décider si la boucle while doit continuer à s'exécuter. Expressions booléennes peut également être utilisé pour prendre des décisions dans les commandes JavaScript en utilisant if. L'instruction if n'exécute son bloc que si la condition testée est vraie. Exemple : la seconde est suivie de si, puis la suivante. éclosion K gram bl condition, etc. Cette condition vérifie s'il reste moins de trois boules de crème glacée. si (cuillères< 3) { } alert("Ice cream is running low!"); И если осталось меньше трех, выполняется программный блок команды if. Функция alert получает строку и выводит ее во всплывающем окне браузера. Попробуйте! Команда if позволяет последовательно выполнить несколько проверок; для этого добавляется одна или несколько секций else if: одно условие, если оно Сначала проверяется оверяется другое, не выполняется, то пр if (scoops >= 5) ( spécifié dans if/else: alert("Mangez plus vite, la glace va fondre !"); ) else if (boules< 3) { } alert("Ice cream is running low!"); 58  глава 1 Добавьте столько дополнит ельных проверок “else if”, сколько вам нужно; с каждым условием связывается свой програ ммный блок, выполняющийся в случае его истинности. первое знакомство с javascript А если нужно принять МНОГО решений... Вы можете объединить сколько угодно команд if/else. Также можно добавить завершающую секцию else; если ни одно условие не выполняется, вы сможете обработать и эту ситуацию, как в следующем примере: if (scoops >= 5) ( On vérifie d'abord s'il reste cinq boules de glace ou plus... alert("Mange plus vite, la glace va fondre!"); ...Ou s'il reste exactement trois boules. .. alert("La crème glacée est presque épuisée!"); ) else if (scoops = = 3) ( ) else if (scoops = = 2) ( alert("Aller une fois!"); ...Ou s'il y a 2, 1 ou 0 billes restantes ... Un signal approprié est émis dans chaque cas. ) else if (scoops == 1) ( alert("Aller deux fois !"); ) else if (scoops == 0) ( If aucune des conditions précédentes n'est vraie , alors ce code sera exécuté alert("Gone!"); ) else ( ) Q : R : alert("Il reste encore beaucoup de glace, venez la chercher."); Foire aux questions Qu'est-ce qu'un "bloc de programme" ? Au niveau de la syntaxe, un bloc de programme (communément appelé simplement un bloc) est un ensemble de commandes, une ou plusieurs, entre accolades. Toutes les commandes de bloc forment un groupe qui est exécuté comme une seule unité. Par exemple, si tandis que l'état true, toutes les commandes du bloc seront exécutées. Ceci s'applique également aux blocs if ou else if. Q : J'ai vu du code dans lequel la condition consiste en une variable, et cette variable ne contient même pas une valeur booléenne, mais une chaîne. Comment travaille-t-il ? R : Ce sujet est abordé un peu plus tard, mais en un mot : le langage JavaScript est assez flexible quant à ce qu'il considère comme des valeurs vraies ou fausses. Par exemple, toute variable contenant une chaîne (non vide) est considérée comme vraie, tandis qu'une variable à laquelle aucune valeur n'a encore été affectée est considérée comme fausse. Attendez, nous allons bientôt examiner cette question en détail. Q : Vous avez dit que le résultat d'une expression peut être non seulement des nombres, des chaînes ou des booléens, mais aussi autre chose. Quoi exactement? R : Pour l'instant, nous nous limiterons aux types primitifs : nombres, chaînes et booléens. Mais avec le temps, nous aborderons des types plus complexes : tableaux (ensembles de valeurs), objets et fonctions. Q : D'où vient le nom "valeurs booléennes" (un autre nom pour les valeurs booléennes) ? R : Il vient du nom de George Boole - un mathématicien anglais, le créateur de la logique booléenne. plus 4   59 s'amuser avec des aimants s'amuser avec des aimants Les aimants avec des fragments de JavaScript sont mélangés. Pouvez-vous les mettre afin d'obtenir un programme JavaScritp fonctionnel qui produira la sortie suivante ? Avant de poursuivre la lecture, vérifiez les réponses à la fin du chapitre. Disposez les aimants en place pour créer un programme JavaScript fonctionnel. document.write("Joyeux anniversaire cher " + nom + ",
"); document.write("Joyeux anniversaire.
"); var i = 0; i = i + 1; var name = "Joe"; ) document.write("Joyeux anniversaire.
"); alors que je< 2) { Расставьте магниты в этой области. 60  глава 1 Восстановленная программа должна выдавать этот результат. первое знакомство с javascript Привлекайте пользователя к взаимодействию со страницей Мы говорили о том, как важно повысить уровень интерактивности страниц и что для этого необходимо взаимодействие с пользователем. Это взаимодействие можно организовать несколькими способами; некоторые из них уже встречались вам. Ниже приведена краткая сводка таких взаимодействий, а потом мы рассмотрим их более подробно. Создание сигнала Браузер поддерживает простейший механизм оповещения пользователей при помощи функции alert. Вызовите alert со строкой, содержащей сообщение, и браузер выведет ее в симпатичном диалоговом окне. Честно говоря, мы немного злоупотребляли этой функцией, она очень проста и удобна; но ее следует применять только тогда, когда вы действительно хотите, чтобы пользователь отложил все дела и немедленно ознакомился с вашим сообщением. Прямая запись в документ Эти три способа встречаются в данной главе. Веб-страницу можно рассматривать как документ (именно так ее называет браузер). Функция document.write позволяет вывести произвольную разметку HTML и контент в произвольной точке страницы. Так поступать не рекомендуется, хотя время от времени этот способ все же применяется. Мы воспользовались, потому что он достаточно прост для изучения JavaScript. Вывод на консоль В каждой среде JavaScript существует консоль, на которую можно выводить сообщения из программного кода. Чтобы вывести сообщение на консоль, вызовите функцию console.log и передайте ей строку (вскоре мы рассмотрим работу с консолью более подробно). Функция console.log - excellent outil diagnostic et débogage. Cependant, dans un programme normal, la sortie de la console est cachée à l'utilisateur, donc ce mécanisme peu efficace. La console est un outil pratique pour trouver des erreurs dans votre code ! Si vous faites une erreur lors de la saisie (par exemple, vous manquez une citation), JavaScript imprime généralement une description de l'erreur sur la console, ce qui facilitera sa recherche. Modification directe du document Le principal moyen d'interagir avec la page et les utilisateurs - les outils JavaScript qui vous permettent d'accéder au balisage d'une page Web, de lire et de modifier son contenu, voire de changer la structure et le style ! Toutes ces opérations sont effectuées via le Document Object Model (voir ci-dessous). Comme vous le verrez bientôt, c'est la meilleure expérience utilisateur. Cependant, pour travailler avec le modèle d'objet de document, vous devez connaître la structure de la page et interface logicielle Utilisé lors de la lecture et de l'écriture de la page. Nous aborderons ce sujet sous peu, mais nous devons d'abord en apprendre un peu plus sur JavaScript. Le but chéri auquel nous aspirons. Une fois atteint, vous pourrez lire la page, la modifier et effectuer toutes les manipulations avec son contenu. suivant 4   61 comparaison des outils de sortie javascript Qui fait quoi ? ae ae Tous les moyens d'interaction sont venus à la mascarade. Saurez-vous les reconnaître derrière les masques ? Faites correspondre les descriptions à droite avec les noms dans la colonne de gauche. Nous avons tracé une ligne pour vous. document.write J'arrête immédiatement ce que l'utilisateur est en train de faire et envoie un court message. Pour continuer, l'utilisateur doit cliquer sur "OK". console.log Je peux insérer de petits extraits de balisage HTML et de texte dans un document. Je ne suis peut-être pas le moyen le plus élégant de transmettre des informations à l'utilisateur, mais je travaille dans tous les navigateurs. alert Avec mon aide, vous serez en mesure de gérer entièrement la page Web : recevoir les données saisies par l'utilisateur, modifier le balisage HTML et les styles, mettre à jour le contenu de la page. Document Object Model 62  Chapitre 1 J'existe uniquement pour des tâches de débogage simples et j'autorise la sortie d'informations vers une console spéciale conçue pour les développeurs. débuter avec javascript Un regard attentif sur console.log Voyons comment fonctionne la fonction console.log. Nous l'utiliserons dans ce chapitre pour afficher les résultats de l'exécution du code, et dans d'autres chapitres du livre pour analyser et déboguer la sortie. Mais gardez à l'esprit que la console reste cachée à la plupart des utilisateurs Web ordinaires, il n'est donc pas recommandé de l'utiliser dans la version finale de la page Web. La sortie de la console est généralement utilisée pour les diagnostics lors du développement de la page. De plus, la console vous aide à voir ce qui se passe dans votre code lorsque vous apprenez les constructions JavaScript de base. Voici comment cela fonctionne : Prenez n'importe quelle chaîne... var message = "Howdy" + " " + "partner"; journal de la console (message); ...et transmettez-le à console.log. La chaîne s'affiche sur la console du navigateur. La console contient toutes les données générées par les appels à console.log dans votre application. souvent Q : Foire Aux Questions Je comprends que console.log peut être utilisé pour imprimer des lignes, mais qu'est-ce que c'est ? Pourquoi "console" et "log" sont-ils séparés par un point ? O : Bonne question. Nous prenons un peu d'avance sur nous-mêmes, mais considérez la console comme un objet qui effectue diverses opérations (console). L'une de ces tâches consiste à envoyer des données à la console. Pour indiquer à la console d'effectuer cette opération, nous utilisons la syntaxe "console.log" et transmettons la valeur de sortie entre parenthèses. Garde ça en tête; objets seront traités de manière beaucoup plus détaillée dans ce livre. Pour l'instant, il suffit de savoir utiliser console.log. Q : La console peut-elle faire autre chose que la sortie normale ? R : Oui, mais le plus souvent, il est utilisé pour une sortie régulière. Il existe plusieurs autres façons d'utiliser la sortie (et la console), mais celles-ci sont spécifiques au navigateur. La console est prise en charge par tous les navigateurs modernes, mais n'est définie dans aucune spécification formelle. Q : R : Tout cela, bien sûr, est bon, mais

15
août
2016

Apprendre la programmation JavaScript (Eric Freeman, Elizabeth Robson)

ISBN : 978-5-496-01257-7, Head First O "Reilly
Format : PDF, OCR avec erreurs
Eric Freeman, Elizabeth Robson
Année de sortie : 2015
Genre : Langages de programmation
Éditeur : Pierre
langue russe
Nombre de pages: 640
La description: Êtes-vous prêt à faire évoluer votre développement Web de la mise en page HTML et CSS à la création de pages entièrement dynamiques ? Alors il est temps de se familiariser avec le langage de programmation "le plus en vogue" - JavaScript !
Avec ce livre, vous apprendrez tout sur le langage JavaScript, des variables aux boucles. Vous comprendrez pourquoi différents navigateurs réagissent différemment au code et comment écrire un code universel pris en charge par tous les navigateurs. Vous comprendrez pourquoi, avec le code JavaScript, vous n'aurez jamais à vous soucier de la congestion des pages et des erreurs de transfert de données. Ne soyez pas intimidé, même si vous n'avez pas écrit une seule ligne de code auparavant - grâce au format de présentation unique, ce livre vous guidera facilement tout au long du parcours d'apprentissage, de l'écriture d'un simple script à la création de projets Web complexes qui fonctionnera dans tous les navigateurs modernes.
Une caractéristique de cette édition est la manière unique de présenter le matériel, qui distingue la série "Head First" de la maison d'édition O "Reilly parmi les nombreux livres ennuyeux sur la programmation.


26
juillet
2017

Apprendre Javascript. Un guide pour créer des sites Web modernes (Ethan Brown)

ISBN : 978-5-9908463-9-5, 978-1-491-91491-5

Auteur : Ethan Brown
Année de sortie : 2017
Genre : Programmation
Éditeur : Williams
langue russe
Nombre de pages : 363
Description : Il est maintenant temps d'apprendre JavaScript. Avec la sortie de la dernière spécification JavaScript, ECMAScript 6.0 (ES6), apprendre à créer des applications de haute qualité dans le langage n'a jamais été aussi facile. Ce livre présente aux programmeurs (amateurs et professionnels) la spécification ES6, ainsi que certains outils et techniques connexes, d'une manière purement...


23
juin
2007

Genre : Programmation
Auteur : Homonenko A.D.
Pays Russie
Nombre de pages : 252
Description : Fournit une présentation systématique des techniques de programmation de base dans le langage
C++ : description des types de données, déclaration des variables, organisation des branches et des boucles, description et utilisation des tableaux, pointeurs, fonctions. Les concepts et les techniques de la programmation orientée objet sont considérés. La technologie de développement de programmes dans l'environnement Borland C++ Builder est décrite.
Format : PDF


08
août
2012

PHP, JavaScript, jQuery, CSS, HTML, MySQL, POO. Une courte collection de questions et réponses d'entrevue possibles. (André Chevtchenko)

Format : PDF, eBook (à l'origine informatique)
Auteur : Andreï Chevtchenko
Année de sortie : 2012
Genre : Ouvrages de référence, manuels scolaires
Éditeur : NeisstonPub
langue russe
Nombre de pages : 57
Description : L'idée d'écrire ce livre m'est venue après que, préparant mon premier entretien pour le poste de développeur PHP, je n'ai pas trouvé de "tutoriel" sensé qui rassemblerait les questions les plus fréquemment posées et les tâches qui sont posées. sur de tels entretiens. Mais comment se prépare-t-on ? Nécessaire. Sinon, ils demanderont plus tard en quoi MyISAM diffère d'InnoDB ou quel filtre jQuery $("a ...


18
oct
2010

Programmation Ruby (Hal Fulton)


Éditeur : M., DMK Press ISBN : 5-94074-357-9
Année de sortie : 2007
Genre : Programmation
langue russe
Nombre de pages : 688
Description : Ruby est un langage orienté objet relativement nouveau développé par Yukihiro Matsumoto en 1995 et empruntant certaines fonctionnalités à LISP, Smalltalk, Perl, CLU et autres. Le langage est activement développé et utilisé dans divers domaines : de l'administration système au développement de sites dynamiques complexes. Le livre est un guide complet de Ruby - il peut être utilisé à la fois comme manuel et comme...


11
oct
2012

Programmation C++ (4e édition) (Walter Savitch)


Auteur : Walter Savic
Année de sortie : 2004
Genre : Programmation
Éditeur : Addison-Wesley
langue russe
Nombre de pages : 784
Description : Le livre contient des informations complètes sur le langage de programmation C++. Outre les sujets "standard" tels que les déclarations de variables, les sélecteurs, les boucles, les tableaux, les fonctions, etc., il couvre également en détail l'utilisation de vecteurs, de tableaux multidimensionnels dynamiques, de la gestion des exceptions, des pointeurs et de la surcharge d'opérateurs. Exemples et tâches pour travail indépendant contenus dans chaque chapitre aideront le lecteur à consolider et ...


26
août
2010

Programmation C# (Collection de livres #2) (divers)

ISBN : 5-94074-409-5
Format : PDF, OCR sans erreur
Année de sortie : 2008
Auteur : Gornakov S.G.
Genre : programmation de téléphones portables
Editeur : DMK Press
Nombre de pages : 512
Description : Il s'agit de la deuxième édition du livre populaire. Une nouvelle version L'édition contient neuf chapitres supplémentaires. Le lecteur apprendra maintenant le processus complet de création d'un jeu mobile en plus de la programmation d'applications pour la plate-forme Java 2 ME. Tout en travaillant avec le livre, une approche sera maîtrisée dans la formation d'un moteur de jeu mobile à part entière, le travail avec les graphismes, l'animation sera étudié, des exemples de cartes de jeu multicouches et animées seront donnés. Considérer...


22
Avr
2018

Programmation d'applications réseaux en C++. Volume 1 (Douglas S. Schmidt, Stephen D. Houston)

ISBN : 978-5-9518-0362-7
Format : JPG, pages numérisées
Auteur : Douglas S. Schmidt, Stephen D. Houston
Année de sortie : 2009
Genre : Programmation
Editeur : Binom
langue russe
Nombre de pages : 304
Description: Le livre décrit l'une des approches les plus prometteuses de la programmation professionnelle d'applications réseau en C ++. Les principales raisons de la complexité du développement d'applications réseau sont prises en compte, ainsi que les modèles de conception et le middleware ACE IIO avec des codes open source, qui peuvent être téléchargés gratuitement du site sur Internet et qui est l'un des plus portables et...


05
déc
2009

Jasmine Blanchett, Mark Summerfield. Programmation d'interface graphique en C++

ISBN : 978-5-91136-059-7
Format : DjVu, OCR sans erreur
Année de sortie : 2008
Auteur : Jasmine Blanchett, Mark Summerfield
Genre : Programmation
Editeur : Kudits-Press
Nombre de pages : 736
Description : Le livre est une édition augmentée et révisée du populaire Marché russe Qt4 : programmation d'interface graphique en C++, publié en 2007. La nouvelle édition contient des modifications liées à l'utilisation des fonctionnalités introduites dans les versions 4.2 et 4.3 de Qt, de nouveaux chapitres ont été ajoutés sur la mise en place d'un dialogue avec l'utilisateur et la création de scripts d'application, les principes de base...


24
mais je
2008

Gornakov S.G. - Programmation des téléphones portables sur J2ME

Format : DjVu, Pages numérisées
Année de sortie : 2005
Auteur : Gornakov S.G.
Genre : Tutoriel J2ME
Editeur : dmk
Nombre de pages : 331
Description : Un livre assez bon et compréhensible sur la programmation pour téléphones portables en Java


03
juillet
2016

Programmation en C pour débutants. 4e édition (Mike McGrath)

ISBN : 978-5-699-79117-0
Format : PDF, eBook (à l'origine informatique)
Auteur : Mike McGrath
Traducteur : M. Reitman
Année de sortie : 2016
Genre : Littérature informatique, programmation
Editeur : Eksmo
Série : Programmation pour débutants
langue russe
Nombre de pages : 192
Description : Ce livre couvre tous les aspects clés du langage C à l'aide d'exemples de programmes et d'illustrations montrant les résultats du code. Ce livre décrit même comment installer un compilateur gratuit pour le langage C et y travailler, vous allez simplement pas la possibilité de se tromper ! livre parfait adapté aux programmeurs, pe...


25
mais je
2010

Éditeur : Pierre
Langue de l'interface : uniquement le russe
Médicament : Non requis
Description : Ce livre est conçu pour vous aider à apprendre la programmation JavaScript par vous-même. Outre des conseils généraux, il contient de nombreux exemples et textes de programmes prêts à l'emploi. Explique comment créer des scripts pour des sites Web, ainsi que des scripts qui exécutent Windows Scripting Host. Les annexes fournissent des informations générales sur JavaScript et HTML. Le livre s'adresse à la fois aux débutants et à ceux qui ont déjà une certaine expérience de la conception et de la programmation Web. Au deuxième et...

11
août
2012

JavaScript. La Bible de l'utilisateur (5e édition) (Danny Goodman, Michael Morrison)

ISBN : 5-8459-1027-7
Format : PDF, Pages numérisées
Auteur : Danny Goodman, Michael Morrison
Année de sortie : 2006
Genre : Programmation
Editeur : Dialectika
langue russe
Nombre de pages : 1179
Description : Ce livre s'adresse à un large éventail de lecteurs de concepteurs Web qui ont décidé d'étudier le langage JavaScript en détail. Il a toutes les chances de remporter le titre de guide de référence complet sur JavaScript, non seulement aux yeux de ses développeurs, mais aussi dans le cœur de ses utilisateurs. La publication décrit en détail presque tous les outils de script JavaScript utilisés dans les scripts modernes et déjà obsolètes.


17
août
2012

Apprendre Ruby (Michael Fitzgerald)

ISBN : 978-5-9775-0225-2, 978-0-596-52986-4 ;
Format : DjVu, Pages numérisées
Auteur : Michael Fitzgerald
Année de sortie : 2008
Genre : Programmation
Éditeur : BHV-Pétersbourg
langue russe
Nombre de pages : 336
Description : Le livre est un guide pour créer des applications Web en Ruby. L'étude est construite sur des exemples pratiques, dont les listes figurent sur presque toutes les pages. Les bases de Ruby sont données, considérées expressions conditionnelles, chaînes et expressions régulières, opérateurs, fonctions, tableaux, hachages, travail avec des fichiers, classes. Décrit le traitement XML, la réflexion, la métaprogrammation,...


Êtes-vous prêt à faire évoluer votre développement Web de la mise en page HTML et CSS à la création de pages entièrement dynamiques ? Alors il est temps de se familiariser avec le langage de programmation "le plus en vogue" - JavaScript ! Avec ce livre, vous apprendrez tout sur le langage JavaScript, des variables aux boucles. Vous comprendrez pourquoi différents navigateurs réagissent différemment au code et comment écrire un code universel pris en charge par tous les navigateurs. Vous comprendrez pourquoi, avec le code JavaScript, vous n'aurez jamais à vous soucier de la congestion des pages et des erreurs de transfert de données. Ne soyez pas intimidé, même si vous n'avez pas écrit une seule ligne de code auparavant - grâce au format de présentation unique, ce livre vous guidera facilement tout au long du parcours d'apprentissage, de l'écriture d'un simple script à la création de projets Web complexes qui fonctionnera dans tous les navigateurs modernes. Une caractéristique de cette édition est la manière unique de présenter le matériel, qui distingue la série Head First d'O'Reilly d'un certain nombre de livres de programmation ennuyeux.

Sur notre site Web, vous pouvez télécharger gratuitement et sans inscription le livre "Learning JavaScript Programming" d'Elizabeth Freeman au format fb2, rtf, epub, pdf, txt, lire le livre en ligne ou acheter le livre dans la boutique en ligne.

Partager