Autor Tema: JavaScript qué ocurre al multiplicar variable booleana por un número CU01112E  (Leído 2560 veces)

Dimitar Stefanov

  • Experto
  • *****
  • Mensajes: 598
    • Ver Perfil
Códigos del ejercicio CU01112E del curso JavaScript desde cero:

Citar
Crea un código JavaScript donde se genere un error por un mal uso de la palabra clave var y comprueba la respuesta del navegador.

1er Código HTML:

Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>Portal web</title>
<script type="text/javascript" src="CU01112E_1.js"></script>
</head>
<body>
<div>
<p>Aquí un párrafo de texto situado antes de la imagen, dentro de un div contenedor</p>
<img onclick="mostrarMensaje1()" src="http://i.imgur.com/afC0L.jpg" alt="Notepad++" title="Notepad++, un útil editor de texto">
<p style="background-color:yellow;" onclick="mostrarMensaje2()">Aquí otro párrafo de texto. JavaScript es un lenguaje utilizado para dotar de efectos dinámicos a las páginas web.
</p>
</div>
</body>
</html>

1er Código JavaScript: "CU01112E_1.js"

Código: [Seleccionar]
function mostrarMensaje1(){
alert('La variable precio vale:'+precio);
dato1=null;
alert('La variable dato1 vale:'+dato1);
var precio=22.55;
precio=precio+10;
alert('La variable vale:'+var precio);
alert('El dobre de precio es:'+(precio*2));
cantidad=10;
alert('El importe resultante de multiplicar precio por cantidad es:'+(precio*cantidad));
precio='muy caro';
alert('La variable precio vale ahora:'+precio);
alert('El doble de precio es ahora:'+(precio*2));
var precio=99.55;
alert('La variable precio ha sido declarada por segunda vez y ahora vale:'+precio);
var $descuento_aplicado=0.55;
alert('La variable $descuento_aplicado vale:'+$descuento_aplicado);
}

// No se ejecuta el JavaScript porque expresamente hemos utilizado la palabra var indebidamente.

Con este primer código no se ejecuta el JavaScript porque expresamente hemos utilizado la palabra var indebidamente.

Citar
SyntaxError: expected expression, got keyword 'var' nombreArchivo.html:13:27
ReferenceError: mostrarMensaje1 is not defined  nombreArchivo.html:1:1



2o Código HTML:


Citar
Crea una variable y asignale los contenidos true y false, e intenta multiplicarlas por un número (por ejemplo por 2). ¿Qué resultados obtienes? ¿A qué crees que se deben estos resultados?

Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>Portal web</title>
<script type="text/javascript" src="CU01112E_2.js"></script>
</head>
<body>
<div>
<p>Aquí un párrafo de texto situado antes de la imagen, dentro de un div contenedor</p>
<img onclick="mostrarMensaje1()" src="http://i.imgur.com/afC0L.jpg" alt="Notepad++" title="Notepad++, un útil editor de texto">
<p style="background-color:yellow;" onclick="mostrarMensaje2()">Aquí otro párrafo de texto. JavaScript es un lenguaje utilizado para dotar de efectos dinámicos a las páginas web.
</p>
</div>
</body>
</html>
 
2o Código JavaScript: "CU01112E_2.js"

Código: [Seleccionar]
function mostrarMensaje1(){
alert('La variable precio vale:'+precio);
dato1=null;
alert('La variable dato1 vale:'+dato1);
var precio=22.55;
precio=false;
alert('La variable vale:'+precio);
alert('El dobre de precio es:'+(precio*2));
cantidad=10;
alert('El importe resultante de multiplicar precio por cantidad es:'+(precio*cantidad));
precio='muy caro';
alert('La variable precio vale ahora:'+precio);
alert('El doble de precio es ahora:'+(precio*2));
var precio=99.55;
alert('La variable precio ha sido declarada por segunda vez y ahora vale:'+precio);
var $descuento_aplicado=0.55;
alert('La variable $descuento_aplicado vale:'+$descuento_aplicado);
}

// Si a una variable se le pone true como valor dicha variable tomo como valor "1". En cambio, si a la variable le establecemos el valor boolean false, la misma tomo el valor de "0".

Si asignamos valor false a la variable precio al multiplicar precio por 2 el resultado que se muestra es 0, "El dobre de precio es :0". El motivo es que si a una variable se le pone true como valor dicha variable tomo como valor "1". En cambio, si a la variable le establecemos el valor boolean false, la misma tomo el valor de "0".

Gracias.
« Última modificación: 06 de Febrero 2016, 14:29 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2660
    • Ver Perfil
Buenas dimiste

Ejercicio bien resuelto

Las variables booleanas no están concebidas para operar numéricamente con ellas, pero si lo hacemos comprobamos que tienen un equivalente numérico, normalmente false equivale a 0 mientras que true puede equivaler a 1 ó -1 dependiendo del lenguaje.

Salu2

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".