• 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.

    Weighted List (gallery-weighted-list) on cdn

    Last Updated: 07/15/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.WeightedList has many features similar to an array list and can generally function as one. Every value in a weighted list also has a weight value attached to it. Values can be retrieved from a weighted list by index as you would expect, but values can also be retrieved at random. The probability of any value being selected at random is weighted. For example, a value with a weight of 500 is twice as likely to be selected as a value with a weight of 250.

    If gallery-alea is present, it will be used for random number generation instead of Math.random.

    • Tags:
    • seletion
    • random
    • list
    • distribution
    • array
    • solmsted
    • weight
    • weighted
    • Download
    • Docs
    • Homepage
    • Bugs
    • Source
    • Example
    • Forum
    • History

    When the total sum of all weights in the list is 0, random selection will not work and will return null. Negative weights can yield unexpected results.

    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', 'gallery-weighted-list', function(Y) {
        // Create a new list.
        var list = new Y.WeightedList(),
            value;
     
        // Add some weighted values to the list.
        list.add('value 1', 5.5);
        list.add('value 2', 10);
        list.add('value 3', 2.5);
     
        // Get a value randomly from the list.
        value = list.value();
     
        // There is about a 30% chance that value === 'value 1'.
        // There is about a 56% chance that value === 'value 2'.
        // There is about a 14% chance that value === 'value 3'.
    });

    © 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