En tant que père d'un enfant de 6 ans, qui enseigne actuellement aux jeunes enfants (et un novice relatif au codage sans éducation formelle, des corrections seront nécessaires), je pense que la leçon se prolongerait mieux par le jeu pratique. Si l'enfant de 6 ans est prêt à comprendre ce qu'est une fermeture, il est alors assez âgé pour tenter sa chance. Je suggère de coller le code sur jsfiddle.net, d'expliquer un peu et de les laisser seuls pour concocter une chanson unique. Le texte explicatif ci-dessous est probablement plus approprié pour un enfant de 10 ans.
function sing(person) {
var firstPart = "There was " + person + " who swallowed ";
var fly = function() {
var creature = "a fly";
var result = "Perhaps she'll die";
alert(firstPart + creature + "\n" + result);
};
var spider = function() {
var creature = "a spider";
var result = "that wiggled and jiggled and tickled inside her";
alert(firstPart + creature + "\n" + result);
};
var bird = function() {
var creature = "a bird";
var result = "How absurd!";
alert(firstPart + creature + "\n" + result);
};
var cat = function() {
var creature = "a cat";
var result = "Imagine That!";
alert(firstPart + creature + "\n" + result);
};
fly();
spider();
bird();
cat();
}
var person="an old lady";
sing(person);
INSTRUCTIONS
DONNÉES: Les données sont un ensemble de faits. Il peut s'agir de chiffres, de mots, de mesures, d'observations ou même simplement de descriptions de choses. Vous ne pouvez pas le toucher, le sentir ou le goûter. Vous pouvez l'écrire, le parler et l'entendre. Vous pouvez l'utiliser pour créer une odeur tactile et un goût à l'aide d'un ordinateur. Il peut être rendu utile par un ordinateur utilisant du code.
CODE: Toute l'écriture ci-dessus est appelée code . Il est écrit en JavaScript.
JAVASCRIPT: JavaScript est un langage. Comme l'anglais ou le français ou le chinois sont des langues. De nombreux langages sont compris par les ordinateurs et autres processeurs électroniques. Pour que JavaScript soit compris par un ordinateur, il a besoin d'un interprète. Imaginez si un enseignant qui ne parle que le russe vient enseigner votre classe à l'école. Quand le professeur dit "все садятся", la classe ne comprendrait pas. Mais heureusement, vous avez un élève russe dans votre classe qui dit à tout le monde que cela signifie "tout le monde s'assoit" - alors vous le faites tous. La classe est comme un ordinateur et l'élève russe est l'interprète. Pour JavaScript, l'interpréteur le plus courant est appelé navigateur.
NAVIGATEUR: Lorsque vous vous connectez à Internet sur un ordinateur, une tablette ou un téléphone pour visiter un site Web, vous utilisez un navigateur. Vous connaissez peut-être par exemple Internet Explorer, Chrome, Firefox et Safari. Le navigateur peut comprendre JavaScript et indiquer à l'ordinateur ce qu'il doit faire. Les instructions JavaScript sont appelées fonctions.
FONCTION: Une fonction en JavaScript est comme une usine. Ce pourrait être une petite usine avec une seule machine à l'intérieur. Ou il peut contenir de nombreuses autres petites usines, chacune avec de nombreuses machines effectuant des tâches différentes. Dans une véritable usine de vêtements, vous pourriez avoir des rames de tissu et des bobines de fil qui entrent et des t-shirts et des jeans qui sortent. Notre usine JavaScript ne traite que les données, elle ne peut pas coudre, percer un trou ou faire fondre du métal. Dans notre usine JavaScript, les données entrent et sortent.
Toutes ces données semblent un peu ennuyeuses, mais c'est vraiment très cool; nous pourrions avoir une fonction qui indique à un robot ce qu'il faut faire pour le dîner. Disons que je vous invite, vous et votre ami, chez moi. Vous préférez les cuisses de poulet, j'aime les saucisses, votre ami veut toujours ce que vous voulez et mon ami ne mange pas de viande.
Je n'ai pas le temps de faire du shopping, donc la fonction doit savoir ce que nous avons dans le réfrigérateur pour prendre des décisions. Chaque ingrédient a un temps de cuisson différent et nous voulons que tout soit servi chaud par le robot en même temps. Nous devons fournir à la fonction les données sur ce que nous aimons, la fonction pourrait «parler» au réfrigérateur et la fonction pourrait contrôler le robot.
Une fonction a normalement un nom, des parenthèses et des accolades. Comme ça:
function cookMeal() { /* STUFF INSIDE THE FUNCTION */ }
Notez cela /*...*/
et //
arrêtez la lecture du code par le navigateur.
NOM: Vous pouvez appeler une fonction à peu près n'importe quel mot que vous voulez. L'exemple "cookMeal" est typique de l'union de deux mots et de la mise en majuscule du second - mais ce n'est pas nécessaire. Il ne peut pas y avoir d'espace, ni un nombre à lui seul.
PARENTHÈSES: "Parenthèses" ou ()
sont la boîte aux lettres sur la porte de l'usine de la fonction JavaScript ou une boîte aux lettres dans la rue pour l'envoi de paquets d'informations à l'usine. Parfois, la boîte aux lettres peut être marquée par exemple cookMeal(you, me, yourFriend, myFriend, fridge, dinnerTime)
, auquel cas vous savez quelles données vous devez lui fournir.
BRACELETS: "Bretelles" qui ressemblent à ceci {}
sont les fenêtres teintées de notre usine. De l'intérieur de l'usine, vous pouvez voir dehors, mais de l'extérieur, vous ne pouvez pas voir dedans.
L'EXEMPLE DE CODE LONG CI-DESSUS
Notre code commence par le mot fonction , nous savons donc que c'est un! Ensuite, le nom de la fonction chante - c'est ma propre description de la fonction. Puis entre parenthèses () . Les parenthèses sont toujours là pour une fonction. Parfois , ils sont vides, et parfois ils ont quelque chose dans celui - ci a un mot.: (person)
. Après cela, il y a une accolade comme celle-ci {
. Cela marque le début de la fonction sing () . Il a un partenaire qui marque la fin du chant () comme celui-ci}
function sing(person) { /* STUFF INSIDE THE FUNCTION */ }
Cette fonction pourrait donc avoir quelque chose à voir avec le chant et pourrait avoir besoin de certaines données sur une personne. Il contient des instructions pour faire quelque chose avec ces données.
Maintenant, après la fonction sing () , vers la fin du code se trouve la ligne
var person="an old lady";
VARIABLE: Les lettres var représentent "variable". Une variable est comme une enveloppe. A l'extérieur, cette enveloppe est marquée "personne". À l'intérieur, il contient une feuille de papier avec les informations dont notre fonction a besoin, des lettres et des espaces réunis comme un morceau de ficelle (ce qu'on appelle une ficelle) qui font une phrase se lisant "une vieille dame". Notre enveloppe pourrait contenir d'autres types de choses comme des nombres (appelés entiers), des instructions (appelées fonctions), des listes (appelées tableaux ). Parce que cette variable est écrite en dehors de tous les accolades {}
et parce que vous pouvez voir à travers les fenêtres teintées lorsque vous êtes à l'intérieur des accolades, cette variable peut être vue de n'importe où dans le code. Nous appelons cela une «variable globale».
VARIABLE GLOBALE: personne est une variable globale, ce qui signifie que si vous changez sa valeur de "une vieille dame" en "un jeune homme", la personne continuera d'être un jeune homme jusqu'à ce que vous décidiez de la changer à nouveau et que toute autre fonction dans le code peut voir que c'est un jeune homme. Appuyez sur le F12bouton ou regardez les paramètres Options pour ouvrir la console développeur d'un navigateur et tapez "personne" pour voir quelle est cette valeur. Tapez person="a young man"
pour le modifier, puis tapez à nouveau "personne" pour voir qu'il a changé.
Après cela, nous avons la ligne
sing(person);
Cette ligne appelle la fonction, comme si elle appelait un chien
"Viens chanter , viens chercher quelqu'un !"
Lorsque le navigateur a chargé le code JavaScript et atteint cette ligne, il démarre la fonction. Je mets la ligne à la fin pour m'assurer que le navigateur a toutes les informations dont il a besoin pour l'exécuter.
Les fonctions définissent les actions - la fonction principale consiste à chanter. Il contient une variable appelée firstPart qui s'applique au chant sur la personne qui s'applique à chacun des versets de la chanson: "Il y avait" + personne + "qui a avalé". Si vous tapez firstPart dans la console, vous n'obtiendrez pas de réponse car la variable est verrouillée dans une fonction - le navigateur ne peut pas voir à l'intérieur des fenêtres teintées des accolades.
FERMETURES: Les fermetures sont les petites fonctions qui se trouvent à l'intérieur de la grande fonction sing () . Les petites usines à l'intérieur de la grande usine. Ils ont chacun leurs propres accolades, ce qui signifie que les variables à l'intérieur ne peuvent pas être vues de l'extérieur. C'est pourquoi les noms des variables ( créature et résultat ) peuvent être répétés dans les fermetures mais avec des valeurs différentes. Si vous tapez ces noms de variables dans la fenêtre de la console, vous n'obtiendrez pas sa valeur car elle est masquée par deux couches de fenêtres teintées.
Les fermetures savent toutes ce qu'est la variable de la fonction sing () appelée firstPart , car elles peuvent voir depuis leurs fenêtres teintées.
Après les fermetures viennent les lignes
fly();
spider();
bird();
cat();
La fonction sing () appellera chacune de ces fonctions dans l'ordre où elles sont données. Ensuite, le travail de la fonction sing () sera terminé.