0% encontró este documento útil (0 votos)
5 vistas4 páginas

Gestión de Carrito de Frutas

El documento contiene funciones para gestionar un carrito de frutas utilizando LocalStorage, permitiendo almacenar y recuperar productos. Incluye la validación de datos y la manipulación de un array de productos definidos en otro archivo. Además, se implementa una función para agregar productos al carrito y se asegura que los datos se mantengan actualizados en LocalStorage.

Cargado por

Julio David
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como RTF, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas4 páginas

Gestión de Carrito de Frutas

El documento contiene funciones para gestionar un carrito de frutas utilizando LocalStorage, permitiendo almacenar y recuperar productos. Incluye la validación de datos y la manipulación de un array de productos definidos en otro archivo. Además, se implementa una función para agregar productos al carrito y se asegura que los datos se mantengan actualizados en LocalStorage.

Cargado por

Julio David
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como RTF, PDF, TXT o lee en línea desde Scribd

// carrito.

js

/**

* Función para almacenar el array carritoFrutas en LocalStorage.

*/

const almacenarCarrito = () => {

// Validar si la constante carritoFrutas posee al menos un elemento guardado.

// Usamos el operador lógico AND para esta validación, como sugirió el team leader.

if ([Link] > 0) { // [cite: 170, 175]

// Crear en LocalStorage una clave con el mismo nombre de este array y guardarlo.

// Se debe guardar en LocalStorage utilizando el método stringify() del objeto JSON. [cite: 173, 174]

[Link]('carritoFrutas', [Link](carritoFrutas));

} else {

// Si el carrito está vacío, también podemos asegurarnos de que la clave se elimine del LocalStorage

// para mantener la coherencia, aunque la consigna no lo pide explícitamente.

[Link]('carritoFrutas');

};

/**

* Función para recuperar la información almacenada en LocalStorage bajo la clave 'carritoFrutas'.

* @returns {Array<Object>} El array de productos del carrito recuperado o un array vacío si no existe.

*/

const recuperarCarrito = () => {

// Invocar la clave para recuperar la información almacenada en LocalStorage. [cite: 180]


// Utilizar el operador lógico OR para enviar un array vacío como alternativa si la clave no existe. [cite:
182, 183]

const carritoGuardado = [Link]([Link]('carritoFrutas')) || [];

// Retornar la información recuperada. [cite: 181]

return carritoGuardado;

};

// Mover la creación de la constante carritoFrutas debajo de recuperarCarrito()

// y reemplazar el valor de array vacío por el llamado a la función recuperarCarrito(). [cite: 184]

const carritoFrutas = recuperarCarrito();

/**

* Arrow Function para agregar un producto al carrito.

* @param {number} frutaId - El ID del producto a agregar.

*/

const agregarAlCarrito = (frutaId) => {

if (frutaId > 0) {

// Asumiendo que 'productos' está definido globalmente (desde [Link])

const productoEncontrado = [Link]((producto) => [Link] === frutaId);

if (productoEncontrado !== undefined) {

[Link](productoEncontrado);

// Implementar almacenarCarrito() dentro de agregarAlCarrito()

// para que se guarde automáticamente en LocalStorage. [cite: 177]


almacenarCarrito();

// Eliminar el uso de [Link]() que mostraba el contenido del carrito. [cite: 178]

// [Link](carritoFrutas); // Comentado o eliminado según consigna

} else {

[Link](`No se encontró ningún producto con el ID: ${frutaId}`);

} else {

[Link]("El ID del producto debe ser mayor a 0.");

};

// [Link]

const productos = [

{ id: 1, imagen: "[Link] nombre: "Duraznos",


precio: 310 },

{ id: 2, imagen: "[Link] nombre:


"Arandanos", precio: 650 },

{ id: 3, imagen: "[Link] nombre: "Mango",


precio: 290 },

{ id: 4, imagen: "[Link] nombre: "Uvas", precio:


700 },

{ id: 5, imagen: "[Link] nombre: "Peras",


precio: 320 },

{ id: 6, imagen: "[Link] nombre: "Cerezas",


precio: 1100 },

{ id: 7, imagen: "[Link] nombre: "Melón",


precio: 350 }
];

También podría gustarte