私は8つのアイテムを持つオブジェクトを持っています - それらを2つの配列に分割したい(ランダム化)。私はを達成したい何ランダム化して2つの配列にオブジェクトを分割します
:
オブジェクト:{1、2、3、4、5、6}オブジェクトから
をharcoded、それは自動的に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つの配列に分けようとするだけの助けが必要です。それについて行く最善の方法を試してください –