【发布时间】:2020-12-10 15:27:01
【问题描述】:
我有一个 Javascript 对象,看起来像这样(未定义为变量,因为它与其他类似对象一起位于数组中):
{ //my_dict
fruit: [[Apple, Banana, Grapes, Apple, Grapes, Grapes], [Banana, Apple, Apple, Kiwi, Grapes, Banana]],
drink: [[smoothie, juice],[juice]],
},
我需要获取fruit 中的一个数组(随机)并将其分配给我的对象中的一个新键fruit_left:,另一个分配给一个新键fruit_right:。我还需要将drink: 中的每个数组分配给新键,例如drink_left: 和drink_right:。现在,重要的是我需要保留顺序,这样如果原始数组fruit: 中的第一个数组成为我的fruit_left,那么原始数组drink: 中的第一个列表分配给drink_left:,反之亦然。
示例结果:
{ //my_dict
fruit: [[Banana, Apple, Apple, Kiwi, Grapes, Banana], [Apple, Banana, Grapes, Apple, Grapes, Grapes]]
drink: [[juice],[smoothie, juice]],
fruit_left: [Banana, Apple, Apple, Kiwi, Grapes, Banana],
fruit_right: [Apple, Banana, Grapes, Apple, Grapes, Grapes],
drink_left: [juice],
drink_right: [smoothie, juice]
},
我知道这可能听起来令人困惑,但我存储数据的方式在我的脚本的其余部分中是有意义的,所以我真的更愿意保持这种方式。 我正在考虑洗牌一个列表,然后为我的左侧选择项目 [0],为我的右侧选择项目 [1],但是我不知道如何确保饮料以相同的方式洗牌。有没有办法并行洗牌?水果和饮料都只有 2 项。或者也许有办法存储原始水果数组是什么,然后使用该信息来推断新的饮料顺序? 非常感谢!
注意:我正在尝试打乱数组的顺序,而不是其中项目的顺序。
【问题讨论】:
-
你有想要的结果的例子吗?
-
我不确定 Parallel 位是什么,但是有,但是 Js 是单线程的,所以你不能进行并行处理
-
你没有收到sense of de ja vue@NinaScholz 吗?
-
@Liam,我认为我的问题很相似,但与您链接的两个问题不同
标签: javascript arrays object random shuffle