0.0.1 • Published 12 years ago
number v0.0.1
number
Number utility functions. Inspired by the ruby Integer object.
install
node
$ npm install --save numbercomponent
$ component install --save jwerle/numberbower
$ bower install numberbrowser
<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(i === 3);
// .downto
(5).downto(1, function (n) { i = n });
assert(i === 1);
// .upto
(5).upto(10, function (n) { i = n });
assert(i === 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 theNumberprototypeisGetter- ABooleanindicating whether thefnhandle is a getter functionfn- A function handle to add to theNumberprototype
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); // 2We can create a function that calculates the GCD (Greatest Common Divisor:
number.extend('gcd', function (y) {
var x = this
y = y || 0;
while (y != 0) {
var z = x % y;
x = y;
y = z;
}
return Math.abs(x);
});
(3).gcd(-7); // 1license
MIT
0.0.1
12 years ago

