色尼玛亚洲综合影院,亚洲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獲取不重復的隨機數的方法比較,轉載需保留來源!

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

主站蜘蛛池模板: 西畴县| 沈丘县| 神农架林区| 柞水县| 定远县| 金堂县| 大同市| 兴和县| 天津市| 遵义县| 日土县| 平原县| 赤峰市| 荥阳市| 普定县| 满洲里市| 建阳市| 星子县| 沅陵县| 怀远县| 遂川县| 靖安县| 溧阳市| 泰来县| 嵊泗县| 抚顺县| 罗城| 南华县| 永福县| 贵州省| 汝州市| 文化| 惠东县| 颍上县| 长寿区| 大同市| 南平市| 白朗县| 山东| 花莲市| 同心县|