Saltar al contenido principal

Interface, Object y Arreglos

Interface

  • Disponible solo en TS y no en JS, al traspilarse son 0 lineas de JS
  • Define la estructura de un objeto y el tipo de dato de cada propiedad
  • Difiere de las cleses en que no se pueden instanciar
  • const producto = new Product(); // Error
interface Product {
id: number;
name: String;
price: number;
year?: number; // Propiedad opcional
model: number | undefined; // Proiedad obligatoria
}

Objeto

// Es posible crear un objeto sin una interfaz
export const tablet = {
id: 1,
name: "Tablet",
price: 200,
};

// Objeto utilizando interfaz
export const telefono: Product = {
id: 2,
name: "Teléfono",
price: 100,
model: undefined,
};

console.log(tablet.price);

Arreglos

export const productsId = [1, 2, 3, 4, 5];
export const carrito: Product[] = []; // Arreglo de objetos [{}, {}];

// PUSH ---------------------------------------------------------------------------------
// Inserta nuevo elemento al final del arreglo
productsId.push(6);
productsId.push(+"1"); // Convertir a número
carrito.push(telefono);

// JOIN --------------------------------------------------------------------------------
// Muestra todos los elementos separados por el caracter indicado
productsId.join(", ");

console.log(productsId);
console.log(carrito);