我这里有这个数组
我只想随机排列每个对象的answerA、answerB、answerC 和answerD 字段。 所以我得到一个数组,其中answerA可能是answerB,answerC可能是answerD等等。
有什么简单的方法可以做到这一点?
最佳答案
使用 https://stackoverflow.com/a/12646864/989121 中的 shuffleArray
:
myKeys = ['answerA','answerB','answerC','answerD']
myValues = myKeys.map(function(k) { return myObject[k] })
myValues = shuffleArray(myValues)
myKeys.forEach(function(k) { myObject[k] = myValues.shift() })
也就是说,一个更简单的选择是像这样构造你的对象:
ID: 22
answers: [
"first", "second answer", etc
],
category: ...
etc
连续命名的变量始终表明您确实需要数组。
关于javascript - 仅随机排列关联数组中的选定项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24322232/