• Register
  • Log In
  • Home
  • Quick Start
    • Configurator
    • Download YUI 3
  • Documentation
    • User Guides
    • Examples
    • API Docs
    • Environments
    • Tutorials
  • Community
    • Gallery
    • Blog
    • Forums
    • YUI Theater
    • Calendar
  • Contribute
    • YUI on GitHub »
    • File a Ticket
    • View Tickets
    • Dashboard
  • Other Projects
    • Shifter »
    • Yogi »
    • YUI 2
    • YUI Doc »
    • YUI Test
    • YUI Website
    • YUI Compressor »
    • YUI Builder »
    • YUI PHP Loader
    • Grid Builder »
    • Skin Builder »
  • YUI
  • >
  • Community
  • >
  • Gallery

Gallery

Modules

  • Home
  • Featured
  • Popular
  • New
  • All

Documentation

  • Yogi Documentation
  • Shifter Documentation
  • Developer Guide
  • Module Setup

Tag Cloud

Context Navigation

    YUI Library is not responsible for bugs or support with this module. It is available as a free service. For support please contact the module owner with the provided links.

    Alea Pseudorandom Number Generator (gallery-alea) on cdn

    Last Updated: 07/14/12
    + 0 -

    Steven Olmsted

    YUI Contributor

    See 42 more by this user.

    Created: 07/14/12
    Last CDN Push: 05/2/13
    Build Tag: gallery-2013.05.02-22-59
    Project: YUI 3
    License: YUI BSD
    YUI Version: 3.5.1
    Free for use.

    Y.Alea is a better pseudorandom number generator than Math.random.

    gallery-alea is a slightly modified version of the Alea algorithm released by Johannes Baagoe.
    Copyright (C) 2010 by Johannes Baagoe baagoe@baagoe.org
    http://baagoe.org/en/wiki/Better_random_numbers_for_javascript#License

    • Tags:
    • random
    • rand
    • pseudorandom
    • number
    • math
    • generator
    • alea
    • solmsted
    • Download
    • Docs
    • Homepage
    • Bugs
    • Source
    • Example
    • Forum
    • History

    The Y.Alea constructor accepts any number of optional arguments to be used as seed values. If no seed values are passed in then Y.Lang.now() is used as the seed value.

    Instances of Y.Alea will have three public methods.

    random: Generates a random number that is greater than or equal to zero and less than one. The number will be a 32-bit fraction.

    fract53: Generates a random number that is greater than or equal to zero and less than one. The number will be a 53-bit fraction.

    uint32: Generates a random 32-bit unsigned integer.

    Code Sample

    <script src="http://yui.yahooapis.com/3.5.1/build/yui/yui-min.js"></script>
    YUI({
        //Last Gallery Build of this module
        gallery: 'gallery-2013.05.02-22-59'
    }).use('gallery-alea', function(Y) {
        var random = new Y.Alea().random,
            randomInteger = function (max, min) {
                return Math.floor(min + random() * (max - min + 1));
            },
            rollD6 = function (count) {
                var sum = 0;
     
                while (count > 0) {
                    count -= 1;
                    sum += randomInteger(6, 1);
                }
     
                return sum;
            };
     
        // The result of rolling two 6-sided dice:
        alert(rollD6(2));
    });

    © 2006-2013 Yahoo! Inc. All rights reserved.
    All code on this site is licensed under the BSD License unless stated otherwise.
    About This Site · Security Contact Info