JavaScript - Tipos de datos y estructuras

JavaScript - Tipos de datos y estructuras

Tipos de datos y estructuras

Todos los lenguajes de programación tienen estructuras de datos integradas, pero estas a menudo difieren de un lenguaje a otro.

En los lenguajes debilmente tipados no especificamos el tipo de valor al declarar las variables y podemos utilizar el mismo nombre de variable para contener distintos tipos de datos:

let edad = 25; // la variable es un numero.
let edad = "viejo" // ahora la variable es un string. 
let edad = true // ahora la variable es un booleano.

Tipos de datos

En el ultimo estandar de ECMAScript se definen 9 tipos de datos, 6 de los cuales son primitivos.

En JavaScript, un primitive (valor primitivo, tipo de dato primitivo) son datos que no son un objeto y no tienen métodos. A demas todos los primitivos son inmutables (osea, no se pueden modificar).

Tipos primitivos

Undefined

Es un valor primitivo que es automáticamente asignado a las variables que solo han sido declaradas o a los argumentos formales para los cuales no existen argumentos reales.

let hola;

console.log(hola) // undefined

Boolean

Un booleano es un dato lógico que solo puede tener los valores true o false.

let verdadero = true;
let falso = false;

console.log(verdadero, falso); // true false

Number

Es un tipo de dato numerico utilizando el formato en coma flotante de doble precisión (para saber mas: Formato en coma flotante de doble precisión.

let numero = 17;
let numeroflotante = 25.6;

String

Es un string es una secuencia de caracteres usado para representar el texto.

let nombre = "Diego"

BigInt

Es un tipo de dato numerico que puede representar números enteros en el formato de precision arbitrario.

let numeroBigInt = 2n;

Para mas info: BigInt

Symbol

Un Symbol es un tipo de dato primitivo en cuyos casos son únicos e inmutables. Representa un identificador unico y es creado con Symbol(), tambien puede agregarsele una descripcion Symbol("Descripcion"), aunque se declaren varios symbol con la misma descripcion no son iguales.

let id1 = Symbol("id");
let id2 = Symbol("id");

console.log(id1 == id2); // false

Para mas info: Symbol

Null

Es un tipo de dato especial que solo contiene el valor null. A diferencia de otros lenguajes en JavaScript es sólo un valor que representa “nada”, “vacío” o “valor desconocido”.

let edad = null; // esto indica que la edad es desconocida o esta vacio.

Object

El tipo objeto es un tipo de dato especial ya que pueden contener colecciones de datos y entidades mas especiales.

let objeto = {
  nombre: "Diego",
  apellido: "Maradona",
  numero: 10,
  eterno: true,
}

Function

Es una estructura sin datos, la cual es un fragmento de codigo que puede ser llamada por otro codigo o por si mismo, o por una variable que haga referencia a la funcion.

function saludar() {
  console.log("Hola");
}

saludar() // "Hola"