randomNumber(options)

by web-nfo.com

HTML

<h3>function randomNumber(options)</h3>
Options: <ul>
    <li>minValue (int)</li>
    <li>maxValue (int)</li>
    <li>length (int)</li>
    <li>string (bool)</li>
</ul>

<div id="logs">
    <div id="log1">{}<br /><br /></div>
    <div id="log2">{length:8}<br /><br /></div>
    <div id="log3">{length:5,string:true}<br /><br /></div>
    <div id="log4">{maxValue:500}<br /><br /></div>
    <div id="log5">{minValue:600,maxValue:700}<br /><br /></div>
    <div id="log6">{minValue:100000000}<br /><br /></div>
</div>

CSS

html, body, * { font-family:Courier; }
span { color:blue; }
#logs { white-space: nowrap; }
#logs div {
    display:inline-block;
    border:1px solid #333;
    padding:10px;
    margin-right:10px;
    font-size:12px;
}

JavaScript

function randomNumber(j){var g=0;var d=999999999999999;var h=false;var c=false;if(typeof j!="undefined"){if(j.minValue){g=j.minValue}if(j.maxValue){d=j.maxValue}if(j.string){h=j.string}if(j.length){c=j.length}}var e=function(l,i){return Math.min(i,Math.max(l,Math.floor(Math.random()*(i-l+1)+l))).toString()};var a=e(g,d);var k="";if(!c){c=e(g.toString().length,d.toString().length)}var f=0;for(var b=0;b<c;b++){if(a[f]==undefined){a=e(g,d);f=0}k=k+a[f];f++}k=Math.floor(k);if(k>d){k=d}if(k<g){k=g}if(!h){return k}return k.toString()};

function log(div, msg) {
    var log = document.getElementById(div);
    if(log) {
        if(typeof msg == 'string') {
            log.innerHTML = log.innerHTML + "<span>(string) </span>";
        }
        log.innerHTML = log.innerHTML + msg.toString() + "<br>";
    }
}

// These are the tests
for(var i=0; i<100; i++) {
    log('log1', randomNumber()); // No params, gives random number
    log('log2', randomNumber({length:8}));
    log('log3', randomNumber({length:5,string:true}));
    log('log4', randomNumber({maxValue:500}));
    log('log5', randomNumber({minValue:600,maxValue:700}));
    log('log6', randomNumber({minValue:100000000}));
}