【发布时间】:2019-03-01 04:06:56
【问题描述】:
假设 Client1 在浏览器 (javascript) 中有一个大数组。 Client2 具有相同的数组。
现在当 Client1 点击 Shuffle 按钮时,这个数组会随机排序。问题是我想将此新订单同步到 Client2。
这个想法是我不想通过网络将所有项目发送到 Client2,因为它很大。然后我想到一个函数array.shuffle(n),其中n是一个随机数。 shuffle 函数使用 n 以某种方式对数组进行排序。当我向 Client2 发送 n 时,它会调用相同的函数并获得相同的数组顺序。
有这样的功能吗?
【问题讨论】:
-
您需要使用 PHP 或 Node.JS 等服务器端编码语言
-
好的,但是怎么做?能给我一些代码吗
-
您可以使用任何您想要的洗牌算法,只要它从零熵可种子 PRNG 中获得随机性,例如:davidbau.com/archives/2010/01/30/…。只需在两者中使用相同的种子即可。
-
这里我们不会为您编写代码 - 我们会修复您已有的代码。
-
另外,您可以通过网络发送最终排列,比种子更多的信息,但您仍然可以跳过发送数组的所有内容。
标签: javascript arrays sorting