Reseña histórica

Originalmente denominado LiveScript, fue desarrollado por Brendan Eich para Netscape Communications en 1995 para crear aplicaciones de internet en el cliente. Después de Netscape, la fundación Mozilla continuó desarrollando JavaScript para el navegador Firefox.

Mas o menos en la misma época, Sun Microsystems lanzó el lenguaje de programación JAVA (que originalmente fue llamado Oak), el que adquirió rápidamente popularidad así que por razones netamente comerciales se le cambia el nombre a Java.

ECMA Script (ES) fue desarrollado por ECMA International después de que la organización adoptó JavaScript.

La versión 1.0 apareció con la versión 2.0 del navegador de la misma empresa y mas tarde es incorporado en el iExplorer 3.0 de MiscroSoft. Poco tiempo después aparece también el VBScript (Visual Basic Script) de Microsoft, un buen competidor.

Versiones de JavaScript y ES
AñoJavaScriptESNavegador
19961.0Netscape 2
19971IE 4
19981.3Netscape 4
19992IE 5
20001.53IE 5.5 + Netscape 6 + Firefox 1
20111.8.55IE 9 + Firefox 4
2012Chrome 23 + Safari 6 + IE 10
2013Firefox 21 + Opera 15
20152015Parcialmente
2016Edge 14 + Safari 10
2017Chrome 58 + Firefox 54
2018Opera 55

Hoy en dia esta estandarizado en todos los navegadores parcialmente.

1. Que es un Script ?

Un script es una secuencia de ordenes, en un determinado lenguaje, que debe ser ejecutado por un interprete. Actualmente los dos lenguajes de script de lado del cliente, mas usados son JavaScript y VBScript del lado sel servidor tambien tenemos a JavaScript (con Node.js) y PHP. La inclusión de scripts en los documentos HTML hace que éstos sean dinamicos. El contenido se genera en forma dinámica, mientras que los valores introducidos en los formularios pueden comprobar localmente, sin necesidad de contar con un servidor ni emplear un cierto tiempo en ello. A pesar del nombre, JavaScript, este lenguaje tiene poco que ver con JAVA.

HTML
Para definir el contenido de las páginas web.
CSS
Para especificar el diseño de las páginas web.
JavaScript
Para programar el comportamiento de las páginas web.

2. Por qué JavaScript ?

Es un lenguaje de programacion del lado del cliente. Actualmente los navegadores Web mas usados son Chrome, FireFox, Netscape Navigator e iExplorer, todos soportan JavaScript, pero solo el iExplorer soporta VBScript.

Es un lenguaje interpretado y no es compilado.

3. Que es jQuery ?

Es una librería gratuita en JavaScript. Es decir agregar funciones avanzadas con el menor esfuerzo.

Ver aqui

4. Que es Node.js ?

Es un entorno de ejecución para JavaScript del lado de servidor construido con el motor de JavaScript V8 de Chrome. Usa un modelo de operaciones E/S sin bloqueo y orientado a eventos, que lo hace liviano y eficiente. El ecosistema de paquetes de Node.js, npm, es el ecosistema mas grande de librerías de código abierto en el mundo.

La meta Node es "proporcionar una manera fácil para construir programas de red escalables". Cuál es el problema con los programas de servidor actuales ? En los lenguajes como Java y PHP, cada conexión genera un nuevo hilo que potencialmente viene acompañado de 2 MB de memoria. En un sistema que tiene 8 GB de RAM, esto da un número máximo teórico de conexiones concurrentes de cerca de 4.000 usuarios. A medida que crece su base de clientes, si usted desea que su aplicación soporte más usuarios, necesitará agregar más y más servidores. Desde luego, esto suma en cuanto a los costos de servidor del negocio, a los costos de tráfico, los costos laborales, y más. Además de estos costos están los costos por los problemas técnicos potenciales — un usuario puede estar usando diferentes servidores para cada solicitud, así que cualquier recurso compartido debe almacenarse en todos los servidores. Por todas estas razones, el cuello de botella en toda la arquitectura de aplicación Web (incluyendo el rendimiento del tráfico, la velocidad de procesador y la velocidad de memoria) era el número máximo de conexiones concurrentes que podía manejar un servidor.

Node.js resuelve este problema cambiando la forma en que se realiza una conexión con el servidor. En lugar de generar un nuevo hilo de OS para cada conexión (y de asignarle la memoria acompañante), cada conexión dispara una ejecución de evento dentro del proceso del motor de Node. Node.js también afirma que nunca se quedará en punto muerto, porque no se permiten bloqueos y porque no se bloquea directamente para llamados E/S. Node afirma que un servidor que lo ejecute puede soportar decenas de miles de conexiones concurrentes.

Node.js no es como Apache o Tomcat que de por si uno los instala y están listo. A Node.js hay que instalarle los módulos que Uds necesite.