比方说,Client1在浏览器(javascript)中具有很大的数组。 Client2具有相同的数组。
现在,当Client1单击“随机播放”按钮时,此数组将随机排序。问题是我想将此新订单同步到Client2。
我的想法是,我不想通过网络将所有项目发送到Client2,因为它很大。然后,我考虑一个函数array.shuffle(n)
,其中n是一个随机数。随机播放功能使用n对数组进行排序。当我将n
发送到Client2时,它调用相同的函数并获得相同的数组顺序。
有这样的功能吗?
答案 0 :(得分:0)
您可以使用Fisher-Yates随机播放算法。它会根据随机数随机播放,您可以将其发送给client2并实现相同的随机播放。
答案 1 :(得分:0)
我找到了
-Javascript random ordering with seed
-https://www.npmjs.com/package/shuffle-seed
-https://github.com/LouisT/SeededShuffle
只需使用@Paulpro评论中的正确关键字