【发布时间】:2023-02-02 18:17:59
【问题描述】:
所以我有一个 javascript 代码,它将数组中的订单合并为 1。
function mergeOrder(data) { // write your code here let result = []; for (let i = 0; i < data.length; i++) { for (let j = 0; j < data[i].orders.length; j++) { result.push(data[i].orders); break; } } return result; } console.log( mergeOrder([ { restaurant: "MekDun", orders: [ ["Burger", 200], ["Kentang", 130], ["CocaCola", 400], ["IceCream", 186], ], reviewers: 140, }, { restaurant: "Lawmore", orders: [ ["Ayam", 126], ["CocaCola", 206], ["Burger", 368], ["IceCream", 80], ], reviewers: 260, }, { restaurant: "Burger Queen", orders: [ ["Ayam", 85], ["CocaCola", 150], ["Burger", 450], ["Kentang", 20], ], reviewers: 80, }, ]) );我如何将输出转换为基本上将数组组合成 1 而不是获取每个数组的输出
[ [ 'Burger', 200, 'Kentang', 130, 'CocaCola', 400, 'IceCream', 186 ], [ 'Ayam', 126, 'CocaCola', 206, 'Burger', 368, 'IceCream', 80 ], [ 'Ayam', 85, 'CocaCola', 150, 'Burger', 450, 'Kentang', 20 ], ]我尝试更改结果推送或将另一个用于获取订单对象,但这就是我的输出结果。我什至尝试放置随机的东西,比如添加另一个或一个一个地抓取,但它不起作用。我不允许使用其他函数,如 concat() 或 flatten()。
这是我得到的唯一输出,也是我现在能做的[ [ [ 'Burger', 200 ], [ 'Kentang', 130 ], [ 'CocaCola', 400 ], [ 'IceCream', 186 ] ], [ [ 'Ayam', 126 ], [ 'CocaCola', 206 ], [ 'Burger', 368 ], [ 'IceCream', 80 ] ], [ [ 'Ayam', 85 ], [ 'CocaCola', 150 ], [ 'Burger', 450 ], [ 'Kentang', 20 ] ] ]
【问题讨论】:
标签: javascript multidimensional-array