本篇文章給大家分享的是有關(guān)JavaScript中怎么控制隨機(jī)數(shù)生成的概率,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
創(chuàng)新互聯(lián)建站是一家專業(yè)提供屏南企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、H5頁(yè)面制作、小程序制作等業(yè)務(wù)。10年已為屏南眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。
具體內(nèi)容如下
'use strict'; export default class GL { /** * 構(gòu)造函數(shù) * @param {object} opt * @param {number} opt.min 最小整數(shù)值 * @param {number} opt.max 最大整數(shù)值 * @param {Map} opt.fenpei 自定義概率 */ constructor({ min, max, fenpei = new Map() }) { this.min = min; this.max = max; this.fenpei = fenpei; } /** * 可分配百分比 */ get baifenbi() { return (1 - this.peizhi) / (this.max - this.min - this.fenpei.size); } /** * 配置 */ get peizhi() { let result = 0; for (let i of this.fenpei.values()) { if (this.min <= i && i < this.max) result += i; } return result; } /** * 隨機(jī)數(shù) * @returns {number} [min,max) */ random() { let t = 0, r = Math.random(); for (let i = this.min; i < this.max; i++) { this.fenpei.has(i) ? t += this.fenpei.get(i) : t += this.baifenbi; if (t > r) return i; } return null; } } let d = new GL({ min: 0, max: 8, fenpei: new Map([ [0, 0.5], // 數(shù)值,百分比 [22, 0.4] ]) }); // 測(cè)試 let count = Array(10).fill(0); for (let i = 0; i < 10000; i++) { count[d.random()] += 1; } for (let i = 0; i < count.length; i++) { console.log(count[i] / 10000); }
以上就是JavaScript中怎么控制隨機(jī)數(shù)生成的概率,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)頁(yè)標(biāo)題:JavaScript中怎么控制隨機(jī)數(shù)生成的概率
網(wǎng)站路徑:http://www.rwnh.cn/article10/jdcpgo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站、企業(yè)建站、全網(wǎng)營(yíng)銷(xiāo)推廣、微信公眾號(hào)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)