Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Secci�n
JavaScript es un robusto lenguaje de programaci�n que puede ser aplicado a un
documento HTML y usado para crear interactividad din�mica en los sitios web. Fue
inventado por Brendan Eich, co-fundador del proyecto Mozilla, Mozilla Foundation y
la Corporaci�n Mozilla .
Puedes hacer casi cualquier cosa con JavaScript. Puedes empezar con peque�as cosas
como carruseles, galer�as de im�genes, dise�os fluctuantes, y respuestas a las
pulsaciones de botones. Con m�s experiencia, ser�s capaz de crear juegos,
animaciones 2D y gr�ficos 3D, aplicaciones integradas basadas en bases de datos, �y
mucho m�s!.
Debajo te presentaremos algunos aspectos del n�cleo del lenguaje, y tambi�n jugar�s
con unas pocas caracter�sticas del API del navegador.
Sin embargo, sentirse c�modo con JavaScript es un poco m�s dif�cil que sentirse
c�modo con HTML y CSS . Deber�s comenzar poco a poco y continuar trabajando en
pasos peque�os y consistentes. Para comenzar, mostraremos c�mo a�adir JavaScript
b�sico a tu p�gina, creando un "�Hola Mundo!" de ejemplo (el est�ndar en los
ejemplos b�sicos de programaci�n.)
Primero, ve a tu sitio de pruebas y crea una carpeta llamada 'scripts' (sin las
comillas). Luego, dentro de la nueva carpeta de scripts que acabas de crear, crea
un nuevo archivo llamado main.js. Gu�rdalo en tu carpeta scripts.
A continuaci�n, abre tu archivo index.html e introduce el siguiente elemento en una
nueva l�nea, justo antes de la etiqueta de cierre </body>:
<script src="scripts/main.js"></script>
Esto hace b�sicamente el mismo trabajo que el elemento <link> para CSS � aplica el
c�digo JavaScript a la p�gina, para que pueda actuar sobre el HTML (y CSS, o
cualquier cosa en la p�gina).
Ahora a�ade el siguiente c�digo al archivo main.js:
var miTitulo = document.querySelector('h1');
miTitulo.innerHTML = 'Hello world!';
Finalmente, aseg�rate de que has guardado los archivos HTML y JavaScript, y abre
index.html en el navegador. Deber�as ver algo as�:
Nota: La raz�n por la que hemos puesto el elemento <script> casi al final del
documento HTML es porque el navegador carga el HTML en el orden en que aparece en
el archivo. Si se cargara primero JavaScript y se supone que debe afectar al HTML
que tiene debajo, podr�a no funcionar, ya que ha sido cargado antes que el HTML
sobre el que se supone debe trabajar. Por lo tanto, colocar el JavaScript cerca del
final de la p�gina es normalmente la mejor estrategia.
�Qu� ha ocurrido?Secci�n
El texto del t�tulo ha sido cambiado por "Hello world!" usando JavaScript. Hicimos
esto primero usando la funci�n querySelector() para obtener una referencia al
t�tulo y almacenarla en una variable llamada miTitulo. Esto es muy similar a lo que
hicimos con CSS usando selectores � queremos hacer algo con un elemento, as� que
tenemos que seleccionarlo primero.
VariablesSecci�n
Las variables son contenedores en los que puedes almacenar valores. Primero debes
declarar la variable con la palabra clave var, seguida del nombre que le quieras
dar:
var nombreDeLaVariable;
Nota: Todas las lineas en JS deben acabar en punto y coma para indicar que es ah�
donde termina la l�nea. Si no los incluyes puedes obtener resultados inesperados.
Nota: Puedes llamar a una variable con casi cualquier nombre, pero hay algunas
restricciones (ver este art�culo sobre las reglas existentes).
nombreDeLaVariable = 'Bob';
Puedes hacer las dos cosas en la misma l�nea si lo necesitas:
nombreDeLaVariable;
Despu�s de haberle dado un valor a la variable, puedes volver a cambiarlo:
ComentariosSecci�n
Puedes escribir comentarios entre el c�digo JavaScript, igual que puedes en CSS. En
JavaScript, los comentarios de una sola l�nea se escriben as�:
// Esto es un comentario
Pero tambi�n puedes escribir comentarios en m�s de una l�nea, igual que en CSS:
/*
Esto es un comentario
de varias l�neas.
*/
OperadoresSecci�n
Un operador es b�sicamente un s�mbolo matem�tico que puede actuar sobre dos valores
(o variables) y producir un resultado. En la tabla de abajo aparecen los operadores
m�s simples, con algunos ejemplos para probarlos en la consola del navegador.
var miVariable = 3;
!miVariable === 3;
Aqu� estamos comprobando "es miVariable NO igual a 3". Esto devuelve false, porque
ES igual a 3.
var miVariable = 3;
miVariable !== 3;
Hay muchos operadores por explorar, pero con esto ser� suficiente por ahora. Mira
Expresiones y operadores para ver la lista completa.
Nota: Mezclar tipos de datos puede dar lugar a resultados extra�os cuando se hacen
c�lculos, as� que aseg�rate de que relacionas tus variables correctamente y de que
recibes los resultados que esperabas. Por ejemplo, teclea: "35" + "25" en tu
consola. �Por qu� no obtienes lo que esperabas? - Porque las comillas convierten
los n�meros en "strings" (el t�rmino ingl�s para denominar cadenas de caracteres) �
y has acabado con los "strings" concatenados entre s�, y no con los n�meros
sumados. Si tecleas: 35 + 25, obtendr�s el resultado correcto.
CondicionalesSecci�n
Las Condicionales son estructuras de c�digo que permiten comprobar si una expresi�n
devuelve true o no, y despu�s ejecuta un c�digo diferente dependiendo del
resultado. La forma de condicional m�s com�n es la llamada if ... else. Entonces,
por ejemplo:
FuncionesSecci�n
Las funciones son una manera de encapsular una funcionalidad que quieres
reutilizar, de manera que puedes llamar esa funci�n con un solo nombre, y no
tendr�s que escribir el c�digo entero cada vez que la utilices. Ya has visto
algunas funciones m�s arriba, por ejemplo:
Por ejemplo, la funci�n alert() hace aparecer una ventana pop-up dentro de la
ventana del navegador, pero nosotros necesitamos asignarle una cadena como un
argumento para decirle qu� mensaje se debe escribir en la ventana pop-up.
Las buenas noticias son que podemos definir nuestras propias funciones � en el
siguiente ejemplo escribimos una funci�n simple que toma dos n�meros como
argumentos y los multiplica entre si:
function multiplica(num1,num2) {
var resultado = num1 * num2;
return resultado;
}
Trata de ejecutar la funci�n anterior en la consola. Despu�s trata de usar la nueva
funci�n algunas veces, p.ej:
multiplica(4,7);
multiplica(20,20);
multiplica(0.5,3);
Nota: La sentencia return le dice al navegador que devuelva la variable resultado
fuera de la funci�n, para que est� disponible para su uso. Esto es necesario porque
las variables definidas dentro de funciones, s�lo est�n disponibles dentro de esas
funciones. Esto se conoce como "alcance de la Variable". scoping (lee m�s sobre
variable scoping aqu� (En ingl�s).)
EventosSecci�n
Para crear una interacci�n real en tu sitio WEB, debes usar eventos � Estos son
unas estructuras de c�digo que captan lo que sucede en el navegador, y permite que
en respuesta a las acciones que suceden se ejecute un c�digo. El ejemplo m�s obvio
es un click (click event), que se activa al hacer click sobre algo. Para demostrar
esto, prueba ingresando lo siguiente en tu consola, luego haz click sobre la pagina
actual:
document.querySelector('html').onclick = function() {
alert('Ouch! Deja de pincharme!');
}
Hay muchas maneras de enlazar un evento a un elemento; aqu� hemos seleccionado el
elemento HTML y le asignamos a su propiedad onclick una funci�n an�nima (funci�n
sin nombre) que contiene el c�digo que se ejecutar� cuando el evento suceda.
Nota que
document.querySelector('html').onclick = function(){};
es equivalente a
Primero que todo, busca una imagen que le guste para su sitio. Aseg�rate que sea
del mismo tama�o que la primera, o lo m�s cerca posible.
Guarda tu imagen en tu carpeta images.
Renombra esta imagen 'firefox2.png' (sin las comillas).
Ve a tu archivo main.js, y agrega el siguiente JavaScript (si tu JavaScript de
"Hola Mundo" est� a�n all�, b�rralo).
var miImage = document.querySelector('img');
miImage.onclick = function () {
var miSrc = miImage.getAttribute('src');
if (miSrc === 'images/firefox-icon.png') {
miImage.setAttribute('src','images/firefox2.png');
} else {
miImage.setAttribute('src', 'images/firefox-icon.png');
}
}
Guarda todos los archivos y carga index.html en tu navegador. Ahora cuando hagas
click en la imagen, �esta debe cambiar por otra!
Se almacena una referencia a tu elemento <img> en la variable miImage. Luego,
hacemos que esta propiedad del manejador de evento onclick de la variable sea igual
a una funci�n sin nombre (una funci�n "an�nima"). Ahora, cada vez que se haga click
en la imagen :
Conclusi�nSecci�n
Si has seguido las instrucciones en este art�culo, tendr�s una p�gina que luzca
como esta (tambi�n puede ver nuestra versi�n aqu�):