sábado, 6 de febrero de 2016

Números

JavaScript tiene un único tipo de números.
Los números en JavaScript pueden ser con decimales o sin decimales.
Del contenido del capítulo JS Numbers W3Schools.

Ejercicio 1. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Los números enteros son exactos hasta los 15 dígitos.</h2>
<button onclick="myFunction()">Púlsame</button>
<p id="demo"></p>
<script>
function myFunction() {
    var x = 999999999999999;  // Valor exacto. Son 15 dígitos
    var y = 9999999999999999; // Hará una aproximación. Son 16 dígitos
    document.getElementById("demo").innerHTML = x + "<br>" + y;
}
</script>
</body>
</html>


Ejercicio 2.
Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>La suma de decimales no siempre es exacta.</h2>
<button onclick="myFunction()">Púlsame</button>
<p id="demo"></p>
<script>
function myFunction() {
    var x = 0.2 + 0.1;
    document.getElementById("demo").innerHTML = "0.2 + 0.1 = " + x;
}
</script>
</body>
</html>


Ejercicio 3. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Para resolver el problema podemos multiplicar y dividir.</h2>
<button onclick="myFunction()">Púlsame</button>
<p id="demo"></p>
<script>
function myFunction() {
    var x = (0.2*10 + 0.1*10) / 10;
    document.getElementById("demo").innerHTML = "0.2 + 0.1 = " + x;
}
</script>
</body>
</html>


Ejercicio 4. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Constantes numéricas precedidas por "0x" son consideradas hexadecimal.</h2>
<button onclick="myFunction()">Púlsame</button>
<p id="demo"></p>
<script>
function myFunction() {
    document.getElementById("demo").innerHTML = "0xFF = " + 0xFF;
}
</script>
</body>
</html>


Ejercicio 5.
Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>El método <i>toString()</i> puede pasar números a base 16 (hexadecimal), base 8 (octal), o base 2 (binaria).</h2>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<script>
function myFunction() {
    var myNumber = 128;
    document.getElementById("demo").innerHTML = "128 = " + 
    myNumber + " Decimal, " +
    myNumber.toString(16) + " Hexadecimal, " +
    myNumber.toString(8) + " Octal, " +
    myNumber.toString(2) + " Binario."
}
</script>
</body>
</html>


Ejercicio 6. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2><i>Infinito</i> es obtenido si calculamos un número más allá del más grande posible.</h2>
<button onclick="myFunction()">Púlsame</button>
<p id="demo"></p>
<script>
function myFunction() {
    var myNumber = 2; 
    var txt = "";
    while (myNumber != Infinity) {
        myNumber = myNumber * myNumber;
        txt = txt + myNumber + "<br>";
    }
    document.getElementById("demo").innerHTML = txt;
}
</script>
</body>
</html>


Ejercicio 7. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>La división por cero también genera <i>infinito</i>.</h2>
<button onclick="myFunction()">Púlsame</button>
<p id="demo"></p>
<script>
function myFunction() {
    var x = 2/0;
    var y = -2/0;
    document.getElementById("demo").innerHTML = "2:0 = " + x + "<br>" + "-2:0 = " + y;
}
</script>
</body>
</html>


Ejercicio 8.
Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Infinito es un número.</h2>
<button onclick="myFunction()">Púlsame</button>
<p id="demo"></p>
<script>
function myFunction() {
    document.getElementById("demo").innerHTML = "Infinito es un " + typeof Infinity;
}
</script>
</body>
</html>


Ejercicio 9. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Un número dividido por un <i>string</i> da como resultado un <i>NaN</i> (not a number):</h2>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = 100 / "Apple";
</script>
</body>
</html>


Ejercicio 10. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Sin embargo si el string contiene un número la operación se realiza como número.</h2>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = 100 / "5";
</script>
</body>
</html>


Ejercicio 11.
Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Con la función global <i>isNaN()</i> podemos saber si un valor es o no es un número.</h2>
<p id="demo"></p>
<script>
var x = 100 / "Apple";
document.getElementById("demo").innerHTML = isNaN(x); // devolverá "true" porque no es un número
</script>
</body>
</html>


Ejercicio 12. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Si operamos <i>NaN</i> con un número el resultado será un <i>NaN</i>.</h2>
<p id="demo"></p>
<script>
var x = NaN;
var y = 5;
document.getElementById("demo").innerHTML = x + y;
</script>
</body>
</html>


Ejercicio 13. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>O podría ser una concatenación si el número es un string.</h2>
<p id="demo"></p>
<script>
var x = NaN;
var y = "5";
document.getElementById("demo").innerHTML = x + y; // se obtendrá NaN5
</script>
</body>
</html>


Ejercicio 14.
Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Pero NaN es un número...</h2>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = typeof NaN;
</script>
</body>
</html>


Ejercicio 15. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<h2>Los números pueden declararse como objetos.</h2>
<p id="demo"></p>
<script>
var x = 123;
var y = new Number(123);
document.getElementById("demo").innerHTML = typeof x + "<br>" + typeof y;
</script>
</body>
</html>


Ejercicio 16. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>No crear nunca números como objetos.</h2>
<p>Números y objetos no pueden compararse con seguridad.</p>
<p id="demo"></p>
<script>
var x = 500;              // x es un números
var y = new Number(500);  // y es un objeto
document.getElementById("demo").innerHTML = (x==y); //devolverá true porque los dos valores son iguales
</script>
</body>
</html>


Ejercicio 17.
Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>No crear nunca números como objetos.</h2>
<p>Números y objetos no pueden compararse con seguridad.</p>
<p id="demo"></p>
<script>
var x = 500;              // x es un número
var y = new Number(500);  // y es un objeto
document.getElementById("demo").innerHTML = (x===y); // devolverá false porque aunque el valor es el mismo no así el tipo de dato
</script>
</body>
</html>


Ejercicio 18. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>No crear nunca números como objetos.</h2>
<p>Números y objetos no pueden compararse con seguridad.</p>
<p>Los objetos no pueden compararse entre sí</p>
<p id="demo"></p>
<script>
var x = new Number(500);  // x es un objeto
var y = new Number(500);  // y es un objeto
document.getElementById("demo").innerHTML = (x==y); // devolverá false
</script>
</body>
</html>


Ejercicio 19.
Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2>Number.MAX_VALUE es el número de valor máximo</h2>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Number.MAX_VALUE;
</script>
</body>
</html>


Ejercicio 20. Este es el código exacto del documento que se muestra:
<!DOCTYPE html>
<html>
<head>
<title>Números JavaScript</title>
<meta charset="UTF-8" />
<meta name="author" content="Ángel Puente" />
<link href="../estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h2><i>MAX_VALUE</i> no puede aplicarse a una variable, número o expresión.</h2>
<p id="demo"></p>
<script>
var x = 6;
document.getElementById("demo").innerHTML = x.MAX_VALUE;
</script>
</body>
</html>

No hay comentarios:

Publicar un comentario