This article is currently in the process of being translated into Spanish (~99% done).
Basic JavaScript syntax
Si tiene experiencia previa con alguno de los lenguajes de programación más populares, como C++, Java, C# o PHP, es probable que reconozca la sintaxis de JavaSript. La razón es que todos estos lenguajes descienden del lenguaje de programación C o están fuertemente inspirados en él. Sin embargo, si no cuenta con experiencia previa con estos lenguajes, o incluso con la programación, permítame ofrecerle una rápida introducción a la sintaxis de JavaScript.
Iniciemos con una regla muy básica, que puede resultar confusa si es completamente nuevo a la programación:
JavaScript distingue entre mayúsculas y minúsculas
Esto significa que a no es lo mismo que A - veamos un ejemplo:
var a = 42;
alert(A);
Aquí se declara una variable (más adelante hablaremos de ellas) con el nombre a (minúscula), pero en la línea siguiente, se intenta utilizar haciendo referencia a A (mayúscula). Esto no funcionará porque no son el mismo carácter.
Sentencias
Una sentencia es básicamente una línea de código.
alert("Hello, world!");
Note como se termina la sentencia con punto y coma - esto le notifica al interprete que la sentencia esta completa. Esto tambien significa que mientras una sentencia una sola línea de código usualmente, no tiene porque estar contenida en una línea fisicamente. Utilice varias lineas, siempre y cuando las finalice con punto y coma:
var s = "Hello world and welcome to this very long
piece of text, which uses multiple lines!";
Tome en cuenta que mientras algunos lenguajes estilo C son muy estrictos sobre el requerir que el final de una línea sea con punto y coma, JavaScript no lo es tanto - intentará determinar si la sentencia termina cuando llegue a un salto de línea, y esto funcionará en la mayoría de los casos. Aqui un ejemplo:
var s = "Hello, world"
var n = 42
No obstante, algunas veces el interprete de JavaScript no logrará entender dichas intenciones, si la línea de código es mas compleja, y después se tendrá que agregar el punto y coma de todas maneras. Por esta razón, los lineamientos de codificación de JavaScript recomiendan que siempre se use punto y coma al final de las sentencias, de esa manera no se olvidará de usarlo cuando realmente se requiera. Esto también permite cambiar a otro lenguaje de programación más estricto sin necesidad de aprender nuevos hábitos o reglas sintacticas.
Bloques
Cuando se utilizan estructuras de control como sentencias IF y bucles, es necesario controlar qué línea(s) de código se incluyen. Por defecto, JavaScript asume que sólo la línea siguiente forma parte de la estructura de control. Ejemplo:
var b = false;
if(b == true)
alert("This will not happen...");
alert("This WILL happen!");
Si ejecuta este ejemplo, notará que sólo se muestra el segundo alert(). La razón es que la sentencia if() nunca será verdadera (nos aseguramos de eso), por lo que la siguiente línea nunca se ejecuta. Sin embargo, si se necesita contener más de una línea de código dentro de la sentencia if, se necesitará crear un bloque. Se utilizan llaves para encapsular las líneas de código que se quieren ver involucradas en la sentencia if:
var b = false;
if(b == true)
{
alert("This will not happen...");
alert("This won't happen either...");
}
alert("This WILL happen!");
Observe cómo en este ejemplo, así como en el anterior, se indenta la línea siguiente después de la sentencia if (primer ejemplo), así como dentro del bloque (segundo ejemplo). Esto no es obligatorio, pero la mayoría de los programadores lo hacen, porque hace que el código sea más legible. Puede indentar una línea, o incluso varias líneas, utilizando la tecla Tab del teclado. Y si tiene un bloque dentro de otro bloque (y así sucesivamente), debe aplicar la sangría adecuada: una sangría por bloque, como en el siguiente ejemplo:
let a = 1, b = 2, c = 3;
if(a == 1)
{
if(b == 2)
{
if(c == 3)
document.write("ok!");
}
}
Los bloques se utilizan mucho en JavaScript, por ejemplo para estructuras de control como en el ejemplo anterior, pero también para definir funciones. Se hablará de ello más adelante.
Comentarios
Por defecto, todo lo que se escriba en código JavaScript, excepto los espacios en blanco, será interpretado y, por tanto, tiene que ser código JavaScript válido. Sin embargo, a veces es necesario dejar un comentario, ya sea para uno mismo o para su equipo. Afortunadamente, JavaScript permite hacerlo muy fácilmente. Si el intérprete se encuentra con dos barras inclinadas o diagonales, el resto de la línea se ignora:
// This line is a comment
Tambien se puede hacer esto en la misma linea de la sentencia, recordando siemrep que despues de las dos diagonales, el resto lo ignorará el interprete:
alert("Hello!"); // The rest of this line is a comment
Se pueden tener varias lineas de comentarios despues de cada una:
// This line is a comment
// ...so is this one
Pero si necesita muchas líneas de comentarios, y no quiere anteponer a cada una las dos diagonales, puede usar la sintaxis de comentario multilínea. Se inicia con una diagonal, seguida inmediatamente de un asterisco (*). Después de eso, todo se considera como comentarios, hasta que salga del modo comentario utilizando la misma notación, pero a la inversa (primero el asterisco, luego la diagonal). Aquí un ejemplo:
/*
All of these lines are comments
and you can write whatever you want,
formatted however you want it!
*/
Puede cambiar entre estos dos tipos de comentarios a discreción.
Resúmen
Esta ha sido una rápida introducción a la sintaxis de JavaScript, que espero le ayude en la comprensión de los ejemplos del resto de este tutorial. Por supuesto, hay más sintaxis que aprender, pero ya se profundizará en esas partes a lo largo del camino, cuando se introduzcan los diversos aspectos del lenguaje.