【发布时间】:2016-09-16 22:19:50
【问题描述】:
我有一个包含 8 个项目的对象 - 我想将这些项目分成 2 个数组(随机)。
我想要达到的目标:
对象:{1、2、3、4、5、6}:编码
从对象,它应该自动创建 2 个单独的数组,并获取对象项并将它们随机化到数组中。确保它不会重复。
数组 1:[3, 5, 6]
数组 2:[2, 1, 4]
到目前为止的代码:
var element = {
1: {
"name": "One element",
"other": 10
},
2: {
"name": "Two element",
"other": 20
},
3: {
"name": "Three element",
"other": 30
},
4: {
"name": "Four element",
"other": 40
},
5: {
"name": "Five element",
"other": 50
},
6: {
"name": "Six element",
"other": 60
},
7: {
"name": "Seven element",
"other": 70
},
8: {
"name": "Eight element",
"other": 80
}
};
function pickRandomProperty(obj) {
var result;
var count = 0;
for (var prop in obj)
if (Math.random() < 1 / ++count)
result = prop;
return result;
}
console.log(pickRandomProperty(element));
【问题讨论】:
-
如何获得随机元素?
-
您当前的代码有什么问题;什么是正确的,什么是错误的?
-
上面的代码没有问题,我只需要帮助尝试将对象分成 2 个数组,如上所示的示例。找出最好的解决方法
标签: javascript jquery arrays random