0% encontró este documento útil (0 votos)
25 vistas1 página

3

El documento presenta un ejercicio en JavaScript que organiza una lista de productos en categorías y calcula el precio promedio de cada categoría. Utiliza el método 'reduce' para agrupar los productos y calcular los promedios. Finalmente, imprime un array de objetos que contiene cada categoría junto con su respectivo promedio de precios.

Cargado por

guverito
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 TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
25 vistas1 página

3

El documento presenta un ejercicio en JavaScript que organiza una lista de productos en categorías y calcula el precio promedio de cada categoría. Utiliza el método 'reduce' para agrupar los productos y calcular los promedios. Finalmente, imprime un array de objetos que contiene cada categoría junto con su respectivo promedio de precios.

Cargado por

guverito
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 TXT, PDF, TXT o lee en línea desde Scribd

// Ejercicio 8

// Entrada:
const productos = [
{ nombre: "Producto 1", precio: 20, categoria: "electronica" },
{ nombre: "Producto 2", precio: 30, categoria: "ropa" },
{ nombre: "Producto 3", precio: 40, categoria: "electronica" },
{ nombre: "Producto 4", precio: 50, categoria: "ropa" },
{ nombre: "Producto 5", precio: 60, categoria: "ropa" },
{ nombre: "Producto 6", precio: 70, categoria: "electronica" },
{ nombre: "Producto 7", precio: 80, categoria: "ropa" },
{ nombre: "Producto 8", precio: 90, categoria: "electronica" },
]

// a)
const productosPorCategorias = productos.reduce((obj, producto) => {
const categoria = producto.categoria
if (!obj[categoria]) {
obj[categoria] = []
}
obj[categoria].push({ nombre: producto.nombre, precio: producto.precio })
return obj
}, {})

// b)
const promedios = Object.keys(productosPorCategorias).map((categoria) => {
// calcular promedio con reduce
const promedio =
productosPorCategorias[categoria].reduce(
(acc, producto) => acc + producto.precio,
0
) / productosPorCategorias[categoria].length

// retornar objeto con categoria y promedio


return { categoria, promedio }
})

console.log(promedios)

También podría gustarte