我正在开发一个项目,其中我需要在 DOM 上对对象数组进行洗牌,同时保留键。
示例:
var o = [
{"key_1": {
"bruce wayne": "batman"
}},
{"key_2": {
"peter parker": "spiderman"
}},
{"key_3": {
"bruce banner": "hulk"
}}
];
之后:
var o = [
{"key_3": {
"bruce banner": "hulk"
}},
{"key_1": {
"bruce wayne": "batman"
}},
{"key_2": {
"peter parker": "spiderman"
}}
];
我尝试过几种不同的方法,但没有成功。此时我也不确定这是否是最好的方法。
其他信息:应用程序必须迭代数组,一次显示一个键集。
-欣赏任何方向,
最佳答案
首先修复o,它不正确:
var o = [
{"key_1": {
"bruce wayne": "batman"
}},
{"key_2": {
"peter parker": "spiderman"
}},
{"key_3": {
"bruce banner": "hulk"
}}
];
Now using the shuffle from this answer:
function shuffle(o){
for(var j, x, i = o.length; i; j = Math.floor(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
return o;
};
你可以这样调用它:
o = shuffle(o);
关于javascript - 在保留键的同时打乱对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22716972/