14 JavaScript
14 JavaScript
INGENIERÍA DE SISTEMAS E
INFORMÁTICA
Programación Web I
El código JavaScript es interpretado por el Browser al igual que HTML o CSS, así que
podremos probar nuestros programas sin necesidad de usar el servidor.
<!DOCTYPE html>
<html lang="es">
<head>
<title>Primer programa con JavaScript</title>
<meta charset="UTF-8">
</head>
<body>
<h1>Probando JavaScript</h1>
<script>
document.write('Hola Mundo');
</script>
</body>
</html>
JavaScript en archivos separados
<script src="myScript.js"></script>
Este código debe ir en la sección head, para que se cargue al inicio, para muchos
scripts es importante que el documento HTML esté completamente cargado antes de
ejecutarse.
Syntaxis
JavaScript es muy similar a Java, cuenta con todos sus operadores aritméticos,
booleanos, condicionales y ciclos.
Sin embargo, las variables en JavaScript son de tipado dinámico al estilo de perl y
también, se las debe declarar antes de su primer uso.
Al igual que en Java, los objetos en JavaScript tienen atributos y pueden tener
métodos, sin embargo en este curso sólo crearemos objetos con atributos
Los objetos se crean con la siguiente sintaxis:
var movie = {
movieID: 1, var actor = {
title: 'Star Wars', actorID: 5703,
year: 1977, name: 'Mark Hamill',
score: 8.9, };
votes: 14182
};
Funciones
JavaScript soporta funciones, objetos y clases! Pero en este curso sólo se mostrarán
funciones y objetos; si desea puede explorar clases en el tutorial de w3schools.
Las funciones se crean con la palabra reservada function; las variables creadas con
var tendrán un alcance global dentro de la función.
Los Browser poseen una consola de JavaScript en la que se puede mostrar el valor
de las variables a modo de depuración.
Esta instrucción permitirá que nuestros scripts puedan pedir datos a un servidor (CGI)
url, es la dirección web de algún CGI que retorna “algo”.
promise, es el objeto que nos permite conectarnos con el servidor.
data, contiene la respuesta del CGI
Existen muchas APIs abiertas a las que se puede acceder de forma gratuita y algunas
de ellas devuelve contenido XML.
<!DOCTYPE html>
<html lang="es">
<head>
<title></title>
<meta charset="UTF-8">
<script>
var url = 'http://www.geoplugin.net/xml.gp?base_currency=PEN';
var promise = fetch(url);
promise.then(response => response.text())
.then(data => {
var xml = (new window.DOMParser()).parseFromString(data, "text/xml");
console.log(xml);
}).catch(error => {
console.log('Error:', error);
});
</script>
</head>
<body>
</body>
</html>
Ejemplo - Capa HTML
<!DOCTYPE html>
<html lang="en-US">
<head>
</head>
A
<body>
<p>Player 1: Enzo</p>
</body>
B
</html>
Ejemplo - Capa CSS
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
A
<title>Ejemplo de JavaScript</title>
<style>
p{
font-family: 'helvetica neue', helvetica, sans-serif;
letter-spacing: 1px;
text-transform: uppercase;
text-align: center;
border: 2px solid rgba(0,0,200,0.6);
background: rgba(0,0,200,0.3);
color: rgba(0,0,200,0.6);
box-shadow: 1px 1px 2px rgba(0,0,200,0.4);
border-radius: 10px;
padding: 3px 10px;
display: inline-block;
cursor: pointer;
}
</style>
Ejemplo - Capa JavaScript
<script>
const para = document.querySelector('p');
para.addEventListener('click', updateName);
B
function updateName() {
const name = prompt('Ingrese un nuevo nombre');
para.textContent = `Player 1: ${name}`;
}
</script>
Ejemplo - Resultado