色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

javascript獲取不重復的隨機數的方法比較

不重復的隨機數方案1:1531 毫秒
一般的思路是先創建一個1-3000的數組,每一次取出一個,然后讓這個數組減少一個, 取一個,減少一個,這樣就可以做到永不重復了。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
不重復的隨機數方案2:297毫秒
但是方案1采用了slice方法,此方法重新生成數組,會大量占用內存和cpu運算, 效率很低,所以改良一下,從原始數組取出一個數, 然后讓原始數組的這個位置賦值為null 。這樣下一次取數的時候判斷如果為null就不取,直到不為null為止。 經過測試,可以顯著提高效率。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
不重復的隨機數方案3:234毫秒
換一個思路,如果把原始數組origin打散,然后再依次打印,
這樣也可以做到隨機永不重復,而且效率更高,
因為方案2運行到越后面,原始數組為null的頻率就越高,運算的次數就越多。

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]

JavaScript技術javascript獲取不重復的隨機數的方法比較,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 喀什市| 沙湾县| 宁德市| 洱源县| 信丰县| 西乌珠穆沁旗| 泸州市| 隆子县| 金阳县| 濉溪县| 巴彦淖尔市| 平南县| 岫岩| 新民市| 宁德市| 浦城县| 香格里拉县| 怀柔区| 黄浦区| 双江| 秦安县| 宁海县| 白山市| 察隅县| 正阳县| 宁武县| 虹口区| 宜良县| 顺昌县| 都江堰市| 平邑县| 昂仁县| 沁源县| 宁波市| 水城县| 三台县| 玉溪市| 乐业县| 祁门县| 武义县| 太原市|