Hemos titulado este artículo “Cosas que no sabías de Javascript”, aunque probablemente hayas tenido acercamiento con algunas, estamos seguros que conocerlas de la forma en que te las vamos a mostrar va a ser muy constructivo para tu formación.

Comencemos con una característica bien curiosa e interesante.

Este artículo utiliza algunas imagenes de terceros con fines únicamente educativos.

¿Es “Javascript” el real nombre de este lenguaje?

javascript

La respuesta es no. ECMAScript es el nombre oficial para este lenguaje. Esto se debe a que Javascript es una marca registrada de Sun Microsystems (ahora Oracle). Sólo Mozzila tiene el permiso de usar oficialmente el nombre Javascript. Ahora bien, en cuanto a términos prácticos normalmente cuando encontramos la palabra Javascript se hace referencia al lenguaje de programación y cuando encontramos ECMAScript se habla de la versión del lenguaje. Ejemplo: ECMAScript5.

¿Cómo nació javascript?

javascript java perl self hypertalk

La respuesta a esta pregunta es muy importante, ya que nos permite vislumbrar algunas de las razones de porqué Javascript es como és. Este lenguaje nació en el año de 1995 como una necesidad que tenía la compañía Netscape de volver más dinámica la interacción con la web a través del navegador que llevaba el mismo nombre de la empresa y que dominó los 1990s. Para ello contrataron a Brendan Eich, un programador de la Universidad de Santa Clara, California. En aquel tiempo, se deliberaron candentes debates al interior de NetScape, acerca de cómo debía ser el lenguaje que permitiera tal dinamismo. Finalmente, Brendan escribió un prototipo del lenguaje en 10 días basado en lenguajes como Java, Perl, Scheme, HyperTalk, Self y AWK, por temas de pragmatismo lo llamaron “Livescript” y luego lo renombraron a “Javascript” por problemas de registro de marca con la palabra “Live”.

¿Por qué ECMA Script?

ecmascript javascript

Ecma International (sigue el link y no me digas que soy el único que piensa que la página es horrible) es una organización internacional con sede en Ginebra, Suiza. Desarrollar estándares alrededor de las tecnologías de la información es su principal objetivo. En el año de 1996, Netscape le solicitó desarrollar la especificación de Javascript, y por razones que ya conocemos terminó llamándose EcmaScript de manera oficial, aunque su creador se oponía a tal nombre debido a que le sonaba como una enfermedad de la piel.

Con esto nos podemos dar cuenta que JS no pertenece a ninguna de las empresas llamadas "Big Tech" sino a una organización que regula su modificación y mantenimiento a través de comités técnicos conformados por personas de múltiples compañías.

¿Hay vida más allá de Javascript?

Pero por supuesto, JS solo es la punta del iceberg de un gran conjunto de tecnologías que se desarrollaron a partir de su existencia y de las exigencias de mundo web.

Las siguientes tecnologías y/o features le deben más que su vida a JS:

  • HTML Dinámico: El principal objetivo de JS ha sido manipular el DOM para brindar una experiencia interactiva a los usuarios.
  • XMLHttpRequest: esta característica le permite a los navegadores realizar peticiones HTTP y obtener datos en formato XML, HTML o JSON.
  • JSON:(Javascript Object Notation) es un formato de intercambio de datos y se ha convertido en el formato preferido y más importante para la comunicación en la web actualmente por encima de XML.
  • AJAX: (Asychronous Javascript and XML) Básicamente es un grupo de tecnologías creadas para dar un nivel de interacción aún mayor a la web. Fue la base para que Google Maps gozara de un gran dinamismo en su lanzamiento en el 2005.
  • JQUERY: Una de las más famosas librerías de JS en toda su historia la cual está especializada en abstraernos de las diferencias de los navegadores y a través de una fluent-style API manipular el DOM más fácilmente en comparación con Vanilla JS (Javascript puro).
  • V8: Es un motor de JS open source creado por Google Inc. sobre el cual correo el navegador Chrome y que lo convirtió en uno de los navegadores más rápidos del mundo.
  • Node.js: Permite a Javascript ejecutarse del lado del servidor y lo convierte en un lenguaje isomórfico (que puede ejecutarse tanto en el servidor como en el cliente). Node.js es una de las plataformas más usadas hoy en día en la industria del software para construir APIs REST y programas de escritorio que pueden ejecutarse en diferentes sistemas operativos tales como Windows, MAC y Linux.

Finalmente, luego de toda esta historia y como diría nuestro querido amigo Linus Torvalds: “show me the code”. Ya que conoces parte de los fundamentos de JS, revisemos una característica que de seguro ha confundido a más de uno por su particularidad y de paso le damos un abrebocas de la segunda parte de esta serie de artículos.

¿Qué carajos es el Hoisting?

hoisting javascript explicado

Esta “extraña” característica nos permite usar variables y funciones que han sido declaradas más adelante. Y es posible debido a que, el lenguaje “mueve” estas declaraciones al principio de la ejecución del programa, y de esta forma, en tiempo de ejecución, siempre encuentra declaradas las funciones y variables antes de ser usadas. En el caso de las variables, si a estas les asignan un valor al momento de ser declaradas, solo se mueve al principio de la función la declaración de la misma. A continuación, algunos ejemplos:

hoisting javascript ejemplos

En los 2 ejemplos anteriores vemos cómo podemos usar tanto funciones como variables que se declaran luego de su uso.

¡Hasta la próxima!

¿Quién escribió este artículo

Hugo Rodríguez

Sígueme en:
LinkedIn
Twitter