Normally Pleasant Mixture
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    numberpublic

    number

    Number utility functions. Inspired by the ruby Integer object.

    build status testling badge

    install

    node

    $ npm install --save number

    component

    $ component install --save jwerle/number

    bower

    $ bower install number

    browser

    <script type="text/javascript" src="https://raw.github.com/jwerle/number/master/build/build.js"></script>
    <script type="text/javascript">
      var number = require('number');
    </script> 

    usage

    var number = require('number');
     
    var i = 0;
    (4).times(function (n) { i = n; });
    assert(=== 3);
     
    // .downto 
    (5).downto(1, function (n) { i = n });
    assert(=== 1);
     
    // .upto 
    (5).upto(10, function (n) { i = n });
    assert(=== 10);
     
    // .next 
    assert((5).next === 6);
     
    // .even 
    assert((1).even === false);
    assert((2).even === true);
     
    // .odd 
    assert((3).odd === true);
    assert((4).odd === false);
     
    // .pred 
    assert((3).pred === 2);
    assert((4).pred === 3);

    api

    .extend(name, isGetter, fn)

    You can extend the Number prototype with number.extend()

    • name - A string name of the function being added to the Number prototype
    • isGetter - A Boolean indicating whether the fn handle is a getter function
    • fn - A function handle to add to the Number prototype

    example

    Setter the isGetter flag to true will define the property as a getter:

    number.extend('sqrt', true, function () {
      return Math.sqrt(this);
    });
     
    console.log((4).sqrt); // 2 

    We can create a function that calculates the GCD (Greatest Common Divisor:

    number.extend('gcd', function (y) {
      var x = this
      y = y || 0;
      while (!= 0) {
        var z = x % y;
        x = y;
        y = z;
      }
      
      return Math.abs(x);
    });
     
    (3).gcd(-7); // 1 

    license

    MIT

    Keywords

    none

    install

    npm i number

    Downloadslast 7 days

    4

    version

    0.0.1

    license

    none

    last publish

    collaborators

    • avatar