19-Numeros en Javascript

En javascript solo hay un tipo de numero, estes se pueden escribir con o sin decimal

Ejemplo

let x = 3.14;    // Un numero con decimal
let y = 3;       // Un numero sin decimal
    

Los números extra grandes o extra pequeños se pueden escribir con notación científica (exponente):

Ejemplo

let x = 123e5;    // 12300000
let y = 123e-5;   // 0.00123 
    

En Javascript los numeros son siempre flotantes

A diferencia de otras lenguejes en javascript los numeros enteros, cortos largos etc no exiten



...

Precisión de enteros

Los numeros enteros, sin punto o coma tienen una precision de 15 digitos

ejemplo

let x = 999999999999999;   // x will be 999999999999999
let y = 9999999999999999;  // y will be 10000000000000000 
    

El número máximo de decimales es 17.

Precisión flotante

El punto flotante en aritmetica no siempre es al 100% precisa

Ejemplo

let x = 0.2 + 0.1;

Salida: 0.2 + 0.1 = 0.30000000000000004


Para resolver el problema anterior, es útil multiplicar y dividir:

Ejemplo

let x = (0.2 * 10 + 0.1 * 10) / 10;

Salida: 0.2 + 0.1 = 0.3




Adición de números y cadenas

JavaScript usa el operador + tanto para la suma como para la concatenación.

Se agregan números. Las cadenas se concatenan.


Si sumas dos números, el resultado será un número:

Ejemplo

let x = 10;
let y = 20;
let z = x + y;

Salida: 30


Si agrega dos cadenas, el resultado será una concatenación de cadenas:

Ejemplo

let x = "10";
let y = "20";
let z = x + y;

Salida:1020


Si agrega un número y una cadena, el resultado será una concatenación de cadenas:

Ejemplo

let x = 10;
let y = "20";
let z = x + y;

Salida:1020


Un error común es esperar que este resultado sea 30:

let x = 10;
let y = 20;
let z = "El resultado es: " + x + y;

Salida:El resultado es: 1020




Cadenas numéricas

Los numeros pueden ser strings en Javascript

Ejemplo

let x = 200;         // x es un numero
let y = "150";       // y es una string (cadena) 
    

Automaticamente javascript intenta convertir las cadenas (strings) en nnumeros

Ejemplo

 let x = "100"; //Esto es una string (cadena)
 let y = "10";  //Esto es una string (cadena)
 let z = x / y;
 

Salida:10

//Se convertio en numero

Si multiplicamos tambien funciona como se muestra en el ejemplo

Ejemplo

 let x = "100"; //Esto es una string (cadena)
 let y = "10";  //Esto es una string (cadena)
 let z = x * y;
 

Salida:1000

//Se convertio en numero

NaN - No es un número

NaN es una palabra reservada de JavaScript que indica que un número no es un número legal.

Si intentamos hacer un calculo aritmetico con una cadena y un numero el resultado sera NaN

Ejemplo

let x = 100 / "Apple";
 

Salida:NaN




Infinity

Si intentamos calcular un numero mas grande de lo normal, javascript nos devuelve infinity

Ejemplo

let myNumber = 2;
// Execute until Infinity
while (myNumber != Infinity) {
  myNumber = myNumber * myNumber;
}
 

Salida:4 16 256 65536 4294967296 18446744073709552000 3.402823669209385e+38 1.157920892373162e+77 1.3407807929942597e+154 Infinity


Si dividimos ppor cero (0) tambien resulta infinity

Ejemplo

let x =  2 / 0;
let y = -2 / 0;
 

Salida:Infinity


Infinityes un número: typeof

Infinity devoluciones number.

Ejemplo

typeof Infinity;
 

Salida:number




hexadecimal

JavaScript interpreta las constantes numéricas como hexadecimales si están precedidas por 0x.

Ejemplo

let x = 0xFF;
 

Salida:0xFF = 255


Nota: No se debe escribir numeros con cero(0) a la esquierda

De forma predeterminada, JavaScript muestra los números como en base 10 . decimales

Pero puedes usar el método toString() para sacar números de base 2 a la base 36 .

Los numeros pueden ser:

  • Hexadecimal cuando tiene base 16
  • decimal cuando tiene base 10
  • Octal cuando tiene base 8
  • Binario cuando tiene base 2

Ejemplo

 let myNumber = 32;
 myNumber.toString(32);
 myNumber.toString(16);
 myNumber.toString(12);
 myNumber.toString(10);
 myNumber.toString(8);
 myNumber.toString(2);
 

Salida:Decimal 32 = Hexatrigesimal (base 36): w Duotrigesimal (base 32): 10 Hexadecimal (base 16): 20 Duodecimal (base 12): 28 Decimal (base 10): 32 Octal (base 8): 40 Binary (base 2): 100000


Números de JavaScript como objetos

Los números de JavaScript son valores primitivos creados a partir de literales:

Ejemplo

let x = 123;
    

Pero los números también se pueden definir como objetos con la palabra clave new:

let y = new Number(123);
    




Publicar un comentario

0 Comentarios