Estoy tratando de tomar esta matriz y agregar cada uno de los últimos campos, por ejemplo: 22, 44, 88, 2, 6, 66, 11 y luego ponerlo en una variable usando javascript. También me gustaría poner la cantidad de productos en la matriz en una variable diferente. ¿Alguien sabe una manera simple de hacer esto? ¿Usaría un bucle?
let products = [ ["product1", "Small Widget", "159753", 33, 22], ["product2", "Medium Widget", "258456", 55, 44], ["product3", "Large Widget", "753951", 77, 88], ["product4", "Not a Widget", "852654", 11, 2], ["product5", "Could be a Widget", "654456", 99, 6], ["product6", "Ultimate Widget", "321456", 111, 66], ["product7", "Jumbo Small Medium Widget", "987456", 88, 11] ];Prueba esto:
let products = [ ["product1", "Small Widget", "159753", 33, 22], ["product2", "Medium Widget", "258456", 55, 44], ["product3", "Large Widget", "753951", 77, 88], ["product4", "Not a Widget", "852654", 11, 2], ["product5", "Could be a Widget", "654456", 99, 6], ["product6", "Ultimate Widget", "321456", 111, 66], ["product7", "Jumbo Small Medium Widget", "987456", 88, 11] ]; let sum = 0 products.forEach(product=>{ sum += product[product.length -1] }) console.log(sum) let product_of_elements = 1 products.forEach(product=>{ product_of_elements *= product[product.length -1] }) console.log(product_of_elements) Al final, la variable sum contendrá la suma de todos los últimos elementos, y la variable product_of_elements contendrá sus productos.
Sí, necesitas hacer un bucle. Esto le ayudará a ver cómo acceder a las diferentes partes de los arreglos.
let products = [ ["product1", "Small Widget", "159753", 33, 22], ["product2", "Medium Widget", "258456", 55, 44], ["product3", "Large Widget", "753951", 77, 88], ["product4", "Not a Widget", "852654", 11, 2], ["product5", "Could be a Widget", "654456", 99, 6], ["product6", "Ultimate Widget", "321456", 111, 66], ["product7", "Jumbo Small Medium Widget", "987456", 88, 11] ]; // how many items in products? (how many times to loop.) console.log(products.length); // get the first item (array). console.log(products[0]); // get the 4th item ([3]) in the 1st array ([0]). console.log(products[0][3]);Una solución sencilla
const products = [ ["product1", "Small Widget", "159753", 33, 22], ["product2", "Medium Widget", "258456", 55, 44], ["product3", "Large Widget", "753951", 77, 88], ["product4", "Not a Widget", "852654", 11, 2], ["product5", "Could be a Widget", "654456", 99, 6], ["product6", "Ultimate Widget", "321456", 111, 66], ["product7", "Jumbo Small Medium Widget", "987456", 88, 11] ]; let sum = 0; const productItems = []; products.forEach((product) => { const len = product.length; sum += product[len - 1]; // Add last number productItems.push(product[1]); // Add product name to an array }) console.log(sum); console.log(productItems);