@yr/number-utils v1.1.2
A collection of Number utility functions.
Usage
var numberUtils = require('number-utils');
numberUtils.normalize(50, 0, 100); // => 0.5
numberUtils.interpolate(0.5, 0, 100); // => 50
numberUtils.map(5, 0, 10, 0, 100); // => 50
numberUtils.limit(5, 0, 1); // => 1
numberUtils.rangedRandom(1, 10); // => 6API
TWO_PI: 2x Pi
HALF_PI: 1/2 Pi
degreesToRadians(deg): convert deg to radians
numberUtils.degreesToRadians(360); // => 6.283185307179586radiansToDegrees(rad): convert rad to degrees
numberUtils.radiansToDegrees(180); // => 114.59155902616465normalize(value, min, max): convert value between min and max to number between 0 and 1
value can lie outside of the min and max range
numberUtils.normalize(5, 0, 10); // => 0.5
numberUtils.normalize(5, 10, 0); // => 0.5
numberUtils.normalize(5, 10, 10); // => 1
numberUtils.normalize(2, 5, 10); // => -0.6interpolate(normValue, min, max): convert a normalized normValue between 0 and 1 to number between min and max
numberUtils.interpolate(0.5, 0, 10); // => 5
numberUtils.interpolate(0.5, 10, 0); // => 5
numberUtils.interpolate(0.5, 10, 10); // => 10
numberUtils.interpolate(2, 5, 10); // => 15map(value, min1, max1, min2, max2): convert a value in a range min1, max1 to number between min2 and max2
numberUtils.map(0.5, 0, 1, 0, 100); // => 50
numberUtils.map(1.5, 0, 1, 0, 100); // => 150limit(value, min, max): limits a value to fall within a range min and max
numberUtils.limit(12, 0, 10); // => 10
numberUtils.limit(-5, 0, 10); // => 0
numberUtils.limit(5, 0, 10); // => 5rangedRandom(min, max): generate a random number between min and max
numberUtils.rangedRandom(0, 10); // => 5
numberUtils.rangedRandom(10, 20); // => 16round(value, decimalPlaces): round value to specified number of decimalPlaces. In addition, rounds negative numbers away from zero.
numberUtils.round(1.005, 2); // => 1.01
numberUtils.round(1.4999999, 2); // => 1.5
numberUtils.round(1.4009999, 3); // => 1.401
numberUtils.round(1.005, 5); // => 1.005
numberUtils.round(-1.5); // => -2