Como padre de un niño de 6 años, que actualmente enseña a niños pequeños (y un novato relativo a la codificación sin educación formal, por lo que se requerirán correcciones), creo que la lección se mantendrá mejor a través del juego práctico. Si el niño de 6 años está listo para entender qué es un cierre, entonces tiene la edad suficiente para intentarlo. Sugeriría pegar el código en jsfiddle.net, explicar un poco y dejarlos solos para inventar una canción única. El texto explicativo a continuación es probablemente más apropiado para un niño de 10 años.
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);
INSTRUCCIONES
DATOS: Los datos son una colección de hechos. Pueden ser números, palabras, medidas, observaciones o incluso solo descripciones de cosas. No puedes tocarlo, olerlo o probarlo. Puedes escribirlo, hablarlo y escucharlo. Puede usarlo para crear olores y sabores táctiles usando una computadora. Puede ser útil por una computadora usando código.
CÓDIGO: Toda la escritura anterior se llama código . Está escrito en JavaScript.
JAVASCRIPT: JavaScript es un lenguaje. Al igual que el inglés o francés o chino son idiomas. Hay muchos idiomas que las computadoras y otros procesadores electrónicos entienden. Para que una computadora entienda JavaScript necesita un intérprete. Imagínese si un maestro que solo habla ruso viene a enseñar su clase en la escuela. Cuando el maestro dice "все садятся", la clase no lo entendería. Pero afortunadamente tienes un alumno ruso en tu clase que le dice a todos que esto significa "todos siéntense", así que todos lo hacen. La clase es como una computadora y el alumno ruso es el intérprete. Para JavaScript, el intérprete más común se llama navegador.
NAVEGADOR: cuando se conecta a Internet en una computadora, tableta o teléfono para visitar un sitio web, utiliza un navegador. Algunos ejemplos que puede conocer son Internet Explorer, Chrome, Firefox y Safari. El navegador puede entender JavaScript y decirle a la computadora lo que necesita hacer. Las instrucciones de JavaScript se llaman funciones.
FUNCIÓN: Una función en JavaScript es como una fábrica. Podría ser una pequeña fábrica con solo una máquina adentro. O puede contener muchas otras pequeñas fábricas, cada una con muchas máquinas que realizan diferentes trabajos. En una fábrica de ropa de la vida real, podría tener resmas de tela y bobinas de hilo entrando y camisetas y jeans saliendo. Nuestra fábrica de JavaScript solo procesa datos, no puede coser, perforar un agujero ni fundir metal. En nuestra fábrica de JavaScript, los datos entran y salen datos.
Todo este material de datos suena un poco aburrido, pero es realmente genial; podríamos tener una función que le diga a un robot qué hacer para la cena. Digamos que te invito a ti y a tu amigo a mi casa. Te gustan más las patas de pollo, me gustan las salchichas, tu amigo siempre quiere lo que quieres y mi amigo no come carne.
No tengo tiempo para ir de compras, por lo que la función necesita saber qué tenemos en el refrigerador para tomar decisiones. Cada ingrediente tiene un tiempo de cocción diferente y queremos que todo sea servido caliente por el robot al mismo tiempo. Necesitamos proporcionar a la función los datos sobre lo que nos gusta, la función podría "hablar" con el refrigerador y la función podría controlar el robot.
Una función normalmente tiene un nombre, paréntesis y llaves. Me gusta esto:
function cookMeal() { /* STUFF INSIDE THE FUNCTION */ }
Tenga en cuenta eso /*...*/
y //
detenga el código que lee el navegador.
NOMBRE: puede llamar a una función casi cualquier palabra que desee. El ejemplo "cookMeal" es típico en unir dos palabras y darle al segundo una letra mayúscula al principio, pero esto no es necesario. No puede tener un espacio y no puede ser un número por sí solo.
PADRES: "Paréntesis" o ()
son el buzón en la puerta de la fábrica de funciones de JavaScript o un buzón en la calle para enviar paquetes de información a la fábrica. A veces, el buzón de correo puede estar marcado, por ejemplo cookMeal(you, me, yourFriend, myFriend, fridge, dinnerTime)
, en cuyo caso usted sabe qué datos debe proporcionar.
BRAZOS: "Brackets" que se ven así {}
son las ventanas tintadas de nuestra fábrica. Desde el interior de la fábrica se puede ver hacia afuera, pero desde afuera no se puede ver hacia adentro.
EL EJEMPLO DE CÓDIGO LARGO ANTERIOR
Nuestro código comienza con la función de palabra , ¡así que sabemos que es uno! Luego, el nombre de la función sing : esa es mi propia descripción de lo que se trata la función. Luego paréntesis () . Los paréntesis siempre están ahí para una función. A veces están vacíos, ya veces tienen algo en Éste tiene una palabra en.: (person)
. Después de esto hay un aparato ortopédico como este {
. Esto marca el inicio de la función sing () . Tiene un compañero que marca el final de sing () como este}
function sing(person) { /* STUFF INSIDE THE FUNCTION */ }
Entonces, esta función podría tener algo que ver con el canto, y podría necesitar algunos datos sobre una persona. Tiene instrucciones dentro para hacer algo con esos datos.
Ahora, después de la función sing () , cerca del final del código está la línea
var person="an old lady";
VARIABLE: Las letras var significan "variable". Una variable es como un sobre. En el exterior, este sobre está marcado como "persona". En el interior contiene un trozo de papel con la información que necesita nuestra función, algunas letras y espacios unidos como un trozo de cuerda (se llama cadena) que forman una frase que dice "una anciana". Nuestro sobre podría contener otros tipos de cosas como números (llamados enteros), instrucciones (llamadas funciones), listas (llamadas matrices ). Debido a que esta variable se escribe fuera de todos los corchetes {}
, y porque puede ver a través de las ventanas polarizadas cuando está dentro de los corchetes, esta variable se puede ver desde cualquier parte del código. Llamamos a esto una 'variable global'.
VARIABLE GLOBAL: persona es una variable global, lo que significa que si cambia su valor de "una anciana" a "un hombre joven", la persona seguirá siendo un hombre joven hasta que decida cambiarlo nuevamente y que cualquier otra función en El código puede ver que es un hombre joven. Presione el F12botón o mire la configuración de Opciones para abrir la consola de desarrollador de un navegador y escriba "persona" para ver cuál es este valor. Escriba person="a young man"
para cambiarlo y luego escriba "persona" nuevamente para ver si ha cambiado.
Después de esto tenemos la línea.
sing(person);
Esta línea llama a la función, como si llamara a un perro
"Vamos a cantar , ¡Ven a buscar persona !"
Cuando el navegador haya cargado el código JavaScript y haya alcanzado esta línea, iniciará la función. Puse la línea al final para asegurarme de que el navegador tenga toda la información que necesita para ejecutarlo.
Las funciones definen acciones: la función principal se trata de cantar. Contiene una variable llamada firstPart que se aplica al canto sobre la persona que se aplica a cada uno de los versos de la canción: "Hubo" + persona + "que tragó". Si escribe firstPart en la consola, no obtendrá una respuesta porque la variable está bloqueada en una función: el navegador no puede ver dentro de las ventanas polarizadas de las llaves.
CIERRES: Los cierres son las funciones más pequeñas que están dentro de la función grande sing () . Las pequeñas fábricas dentro de la gran fábrica. Cada uno tiene sus propias llaves, lo que significa que las variables dentro de ellas no se pueden ver desde el exterior. Es por eso que los nombres de las variables ( criatura y resultado ) pueden repetirse en los cierres pero con valores diferentes. Si escribe estos nombres de variables en la ventana de la consola, no obtendrá su valor porque está oculto por dos capas de ventanas polarizadas.
Todos los cierres saben qué es la variable de la función sing () llamada firstPart , porque pueden ver desde sus ventanas tintadas.
Después de los cierres vienen las líneas
fly();
spider();
bird();
cat();
La función sing () llamará a cada una de estas funciones en el orden en que se dan. Entonces se realizará el trabajo de la función sing ().