Chance - Your All-Purpose JavaScript Data Generator
Written by Ian Elliot   
Wednesday, 24 July 2013

So you need to test your program, but where do you get some test data from? Chance is a small JavaScript library that will generate random data of various types - like telephone numbers - for you. 

The temptation is to headline this piece with "Chance would be a fine thing", but it would really have to be "Chance is a fine thing" to avoid misleading the reader. Chance is a relatively new library of JavaScript functions which generate test data. 

 

chancebanner

 

For example if you need a random zip code you simply use:

chance.zip()

and you get a random number with the characteristics of a zip code. The same for

chance.phone()

but notice that these aren't necessarily "real" in the sense that the zip code or the phone number might not actually exist, they simply fit the pattern for the type of data so that you can feed them to a function that is supposed to work with them. 

To use it all you have to do is include the library, about 5Kbytes minified and zipped, and start using it. It creates a global chance object but you can also create additional chance objects and initialize the seed for the random number generator so to produce a repeatable pseudo-random sequence.  It works in the browser or with Node.js. 

As well as generating text and formatted data types, it also has some random generators for primitive types - Boolean, character, integer and so on and, yes there is a dice! 

Although the library is quite young, it has a good collection of advanced generators. For example, it will generate random sentences, paragraphs, names, domains, email addresses, postal addresses, time stamps, credit card numbers and, my own favorite, don't ask why, random GUIDs.  For a full list of generators, see the Chance website.

The library is available under an Open Source MIT licence and there is lots of scope for adding additional generators. Given that each generator is small and fairly standalone it would make a good starting point for anyone wanting to get involved in a first open source project. 

 

chanceicon

More Information

Chance website

Chance GitHub

Related Articles

Inside Random Numbers       

The Monte Carlo Method

 

Task.js Asynchronous Tasks In JavaScript

 

JavaScript Physics Playground

 

Tearable Cloth In JavaScript

 

JavaScript Assembly Language

 

Tetris In 140 Bytes

 

Ray Tracer in JavaScript 

      

To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, FacebookGoogle+ or Linkedin,  or sign up for our weekly newsletter.

 

espbook

 

Comments




or email your comment to: comments@i-programmer.info

 

Banner


Google Opensources Privacy Library
08/11/2024

Google is making a new differential privacy library available as open source. PipelineDP4J is a Java-based library that can be used to analyse data sets while preserving privacy.



Gifts For Geeks 2024
22/11/2024

Are you ready for Thanksgiving, when overeating remorse and a surfeit of being thankful causes the unsettling thought that there are only four weeks till the Xmas break? So here is a mix of weird [ ... ]


More News

 

 

 

 

Last Updated ( Wednesday, 24 July 2013 )