[英]How to access key value pairs under array of objects of array of objects - java script
[英]How to multiple a value in Array of objects in java script
这是我的阵列。
let menu = [
{ id: 1, name: "Soda",price: 3.12,size: "4oz",type: "Drink" },
{ id: 2, name: "Beer", price: 6.50, size: "8oz", type: "Drink" },
{ id: 3, name: "Margarita", price: 12.99, size: "12oz", type: "Drink" },
{ id: 4, name: "Pizza", price: 25.10, size: "60oz", type: "Food" },
{ id: 5, name: "Kebab", price: 31.48, size: "42oz", type: "Food" },
{ id: 6, name: "Berger", price: 23.83, size: "99oz", type: "Food" }
]
我想在 1.8 的多个价格中增加一倍的尺寸
然后我想在这些更改后显示主菜单
这是我的代码和我所做的。 这仅显示价格和大小,但我想要整个菜单。
代码:
let menu = [ { id: 1, name: "Soda",price: 3.12,size: "4oz",type: "Drink" }, { id: 2, name: "Beer", price: 6.50, size: "8oz", type: "Drink" }, { id: 3, name: "Margarita", price: 12.99, size: "12oz", type: "Drink" }, { id: 4, name: "Pizza", price: 25.10, size: "60oz", type: "Food" }, { id: 5, name: "Kebab", price: 31.48, size: "42oz", type: "Food" }, { id: 6, name: "Berger", price: 23.83, size: "99oz", type: "Food" } ] let prices = menu.map(item => item.price); multipliedPrice = prices.map(item => (item * 1.8).toFixed(2)); //------------------------------------------------------- doubledSize = menu.map(item => 2 * parseInt(item.size)); console.log("Size in USA is: " + doubledSize); console.log("Price in USA is: " + multipliedPrice);
与其只返回计算价格,不如返回一个新的 object,如下所示:
menu.map(item => {
return { ...item,
price: 2 * parseInt(item.size)
}
});
let prices = menu.map(item => { item.price = (item.price * 1.8).toFixed(2); return item;});
为此,您可以使用Array.map ,我们将每个价格乘以 1.8,然后将每个项目的大小加倍:
let menu = [ { id: 1, name: "Soda",price: 3.12,size: "4oz",type: "Drink" }, { id: 2, name: "Beer", price: 6.50, size: "8oz", type: "Drink" }, { id: 3, name: "Margarita", price: 12.99, size: "12oz", type: "Drink" }, { id: 4, name: "Pizza", price: 25.10, size: "60oz", type: "Food" }, { id: 5, name: "Kebab", price: 31.48, size: "42oz", type: "Food" }, { id: 6, name: "Burger", price: 23.83, size: "99oz", type: "Food" } ]; const newMenu = menu.map(item => { return {...item, price: item.price * 1.8, size: parseInt(item.size) * 2 + "oz" } }) console.log("New menu:"); console.log("Item".padEnd(20) + "Size in USA".padEnd(20) + "Price in USA"); newMenu.forEach(item => console.log(item.name.padEnd(20) + (item.size + "").padEnd(20) + item.price.toFixed(2)))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.