JavaScript acepta diferentes tipos de datos. Una expresión es cualquier conjunto valido de constantes, variables y operadores que al evaluarse dan un único valor del tipo numérico, cadena o lógico.
JavaScript es un lenguaje de tipo dinámico, lo que significa que no necesita especificar el tipo de dato a almacenar en la variable porque el motor de JavaScript lo usa dinámicamente. Debe usar var aquí para especificar el tipo de datos.
Representa valores numérico ya sea enteros o decimales. A diferencia de otros lenguajes solo existe un tipo de dato llamado numérico.
Pueden ser números enteros así:
Tipo | Descripción | Ejemplo |
---|---|---|
Decimal (base 10) | dígitos de 0 a 9 | 199 |
binario (base 1) | dígitos 0 o 1 | 0b00000001 |
Octal (base 8) | dígitos 0 a 7 | 0755 |
Hexadecimal (base 16) | dígitos de 0 a F | 0xE477 |
Punto flotante | 3.1416, -2e4, 5e-12. |
var n = 34; var n = 34.12; var n = 34e3; //34000 var n = 34e-3; //0.034
Punto flotante, puede tener un entero decimal, un punto, una fracción (otro numero decimal), un exponente que consiste en la letra e seguida de un entero, el cual puede llevar un signo (+ o -).
Propiedades | Descripción |
---|---|
constructor | |
MAX_VALUE | Devuelve el mayor número posible en JavaScript |
MIN_VALUE | Devuelve el menor número posible en JavaScript |
NEGATIVE_INFINITY | Representa infinito negativo (devuelto en desbordamiento) |
POSITIVE_INFINITY | Representa infinito positivo (devuelto en desbordamiento) |
NaN | Representa un valor "No es un número" |
prototype | Le permite agregar propiedades y métodos a un objeto |
E | |
LN2 | |
LN10 | |
LOG2E | |
LOG10E | |
PI | Valor de pi (3.1416) |
SQRT1_2 | |
SQRT2 |
Métodos | Descripción |
---|---|
isFinite() | Comprueba si un valor es un número finito. |
isInteger(n) | Comprueba si un valor es un entero. |
isNaN(n) | Comprueba si valor no esta definido. |
isSafeInterger() | Comprueba si un valor es un entero seguro |
toExponential(x) | Convierte un número en una notación exponencial |
toFixed(x) | Estable x dígitos decimal. |
toLocaleString() | Convierte un número en una cadena, según la configuración regional |
toPrecision(x) | Formatea un número a x longitud |
toString(n) | Convierte a cadena |
valueOf() | Devuelve el valor primitivo de un numero. |
Number.isNaN(123); //false Number.isNaN(-1.23); //false Number.isNaN(5-2); //false Number.isNaN(0); //false Number.isNaN('123'); //false Number.isNaN('Hola'); //false Number.isNaN('2005/12/12'); //false Number.isNaN(''); //false Number.isNaN(true); //false Number.isNaN(undefined); //false Number.isNaN('NaN'); //false Number.isNaN(NaN); //true Number.isNaN(0/0); //true
También llamadas String, son cualquier cosa que este encerrado entre comillas. Pueden ser simples o dobles.
"Hola mundo" 'Enrique'
También pueden usar los siguientes caracteres:
Carácter | Descripción |
---|---|
\b | indica un retroceso (bachspace) |
\f | indica un avance de pagina (Form feed) |
\n | Indica nueva linea (New Line) |
\r | Indica un retorno de carro. |
\t | Indica un tabulador (Tab) |
\" | Se puede incluir comillas. Ej: "José \"Chemo\" del Solar" |
\' | Igual que anterior. |
\\\ | Incluir un \ en una cadena. |
\b | Retroceder un espacio |
\\ | Back slash. |
En el caso de las cadenas se pueden concatenar con +
var x = '16' + 'Volvo'; //16Volvo var x = 16 + 'Volvo'; //16Volvo var x = 16 + 4 + 'Volvo'; //20Volvo var x = 'Volvo' + 16 + 4; //Volvo164
Propiedades | Descripción |
---|---|
constructor | |
length | Devuelve el largo de la cadena |
prototype | Le permite agregar propiedades y métodos a un objeto |
var cadena = 'JavaScript'; console.log(cadena.length); //10
Métodos | Descripción |
---|---|
charAt(pos) | Devuelve el carácter en un índice (posición) especificado en una cadena: |
charCodeAt(pos) | Devuelve ASCII en un índice (posición) especificado en una cadena: |
concat(a,b) | Concatena a+b. |
endsWith() | |
fromCharCode() | |
includes() | |
indexOf() | |
lastIndexOf() | |
localeCompare() | |
match() | Replica n veces. |
repeat(n) | |
replace(busca,pone) | Reemplaza la primera coincidencia y distingue mayustulas/minusculas |
search() | |
slice(inicio,fin) | |
split(',') | Convierte una cadena en matriz |
startsWith() | |
substring(desde,hasta) | Extraer parte de la cadena |
substr(desde,largo) | Extraer parte de la cadena |
toLocateLowerCase() | |
toLocateUpperCase() | |
toLowerCase() | Convierte en minusculas. |
toString() | Convierte a cadena. |
toUpperCase() | Convierte en mayusculas. |
trim() | Quita los espacios blancos delante y detras |
valueOf() |
También llamados Booleanos, son las que toman uno de dos valores de true o false.
true false
Propiedad | Descripción |
---|---|
constructor | |
prototype |
Métodos | Descripción |
---|---|
toString() | |
valueOf() |
Es cuando la variable no toma ningún valor. null
null
var persona = {nombre:'Kike',apellido:'GL',edad:65}; persona = null; #Aun es un objeto pero esta vacio
El objeto Fecha se usa para trabajar con fechas y horas.
var variable = new Date(); var variable = new Date('yyyy.mm.ddThh:MM:ss'); var variable = new Date(año,mes,dia,hora,minuto,segundo,milisegundo);
var dt = new Date(); //Fecha y hora actual var m = new Date.now(); //Milisec desde 1-ENE-1970 var dt = new Date('1955-07-14'); var dt = new Date('2023-01-01T08:00:00'); var dt = new Date(2020,7,14,8,0,0,0.0);
Métodos | Descripción |
---|---|
getTime() | Milisegundos desde 1-ENE-1970 |
getFullYear() | Año (4 digitos) |
getMonth() | Mes (0-11) |
getDate() | Dia del mes (1-31) |
getDay() | Dia de la semana (0-6) |
getHours() | Hora (0-23) |
getMinutes() | Minuto (0-59) |
getSeconds() | Segundo (0-59) |
getMilliseconds() | Milisegundo (0-999) |
getTimeOffset() | |
getUTCDate() | |
getUTCDay() | |
setFullYear() | Año (4 digitos) |
setMonth() | Mes |
setDate() | Dia |
setHours() | Hora |
setMinutes() | Minuto |
setSeconds() | Segundo |
setMillisends() | Milisegundo |
setUTCFullYear() | Año UTC |
setUTCMonth() | Mes |
setUTCDate() | Dia |
setUTCHours() | Hora |
setUTCMinutes() | Minuto |
setUTCSeconds() | Segundo |
setUTCMillisends() | Milisegundo |
toString() | Convierte a cadena |
toDateString() | 'Thu Apr 13 2023' |
toJSON() | '2023-04-13T21:37:32.730Z' |
valueOf() | 1681421852730 |
Es el valor de una variable que se definida, pero no inicializada.
vas persona = {nombre:'Kike',apellido:'GL',edad:67}; persona = undefined; //Ya no existe el objeto
JavaScript no da error al dividir entyre cero, en cambio el resultado es Infinity.
var x = 1/0; //Infinity
Un valor de datos primitivo es un único valor de datos simple sin propiedades y métodos adicionales.
typeof 3.14; //Numérico typeof 'Hola'; //Cadena typeof true; //Booleano typeof x; //Indefinido typeof null; //Objeto typeof [1,2,3]; //Objeto typeof {nombre:'Kike',edad:54}; //Objeto typeof null; //Objeto typeof function ok(); //Funcion