/* crear un objeto que nos permita almacenar la información de un producto,
que consiste en un nombre, una referencia (ambas de tipo string)
y un precio y un stock (ambas de tipo numérico). */
let producto = {
nombre: "Tuerca",
referencia: "TRC45",
precio: 10,
stock: 30
}
console.log(producto)
// Crear un array con 3 elementos
let productos = [{
nombre: "Tuerca",
referencia: "TRC45",
precio: 100,
stock: 30
}, {
nombre: "Clavo",
referencia: "CLV",
precio: 20,
stock: 40
}, {
nombre: "Arandela",
referencia: "ARL67",
precio: 30,
stock: 50
}]
console.log(productos)
let inventario = [];
inventario.push({
nombre: "Tuerca",
referencia: "TRC45",
precio: 100,
stock: 30
});
inventario.push({
nombre: "Tuerca",
referencia: "TRC45",
precio: 10,
stock: 30
});
inventario.push({
nombre: "Tuerca",
referencia: "TRC45",
precio: 10,
stock: 30
});
// Con constructores
function Producto(nombre, referencia, precio, stock) {
this.nombre = nombre;
this.referencia = referencia;
this.precio = precio;
this.stock = stock;
}
let tienda = [new Producto("Aa", "BB", 1, 2),
new Producto("CC", "DD", 3, 4),
new Producto("EE", "FF", 5, 6),
];
console.log(tienda)
// Para sumar el stock tengo que recorrer el array
let sumaStock = 0;
// Manera clásica
for (let i = 0; i < productos.length; i++) {
sumaStock += productos[i].stock; // accedo a la propiedad stock del producto
}
console.log(sumaStock)
sumaStock = 0;
// con for of
for (let p of productos) {
sumaStock += p.stock;
}
console.log(sumaStock)
// con foreach
sumaStock = 0;
productos.forEach(function (prod) {
sumaStock += prod.stock;
})
console.log(sumaStock);
function getSumaStock(productos) {
sumaStock = 0;
productos.forEach(function (prod) {
sumaStock += prod.stock;
});
return sumaStock;
}
// Inicializo con el primero porque no sé que valores me voy a encontrar
let masCaro=productos[0];
for (let p of productos) {
if (p.precio>masCaro.precio){
masCaro=p;
}
}
console.log(masCaro);
// Esto es más fácil de programar pero es mucho más costoso computacionalmente
productos.sort((a,b)=>a.precio-b.precio);
console.log(productos)
console.log(productos.at(-1))
productos.forEach(function (prod) {
prod.stock+=10;
});
console.log(productos);