Comparing version 1.0.11 to 1.0.13
{ | ||
"name": "yow", | ||
"version": "1.0.11", | ||
"version": "1.0.13", | ||
"description": "You Only Wish module", | ||
@@ -5,0 +5,0 @@ "main": "yow.js", |
@@ -11,7 +11,17 @@ # Yow | ||
### General Purpose | ||
- **sprintf(args)** - Just as you would expect. Uses the npm module 'sprintf-js'. | ||
- **extend(args)** - Again, just as you would expect. Uses the npm module 'extend'. | ||
### File System | ||
- **mkdir(path)** - Creates the directory you specify. | ||
- **mkpath(path)** - Creates the directory you specify. It will create multiple directories if they do not exit. | ||
- **fileExists(path)** - Nothing fancy, it just returns true/false. | ||
### Type Checks | ||
- **isType(object, type)** - Returns true/false if typeof equals 'type'. | ||
@@ -24,4 +34,12 @@ - **isArray(object)** - Is object an array? | ||
- **isObject(object)** - Is object an object? BTW **null** is not an object. | ||
- **choose(array)** - Returns a randomly chosen object in the specified array. | ||
- **rand(min, max)** - Returns a random number from min to max (inclusive). | ||
- **isInteger(object)** - Is object an integer? | ||
- **isFloat(object)** - Is object a float? | ||
### Random | ||
- **random()** - Returns Math.random(). | ||
- **random(integer)** - Returns a random number from 0 to the integer specified (exclusive). | ||
- **random(min, max)** - Returns a random number from min to max (inclusive). | ||
- **random(array)** - Returns a randomly chosen object in the specified array. | ||
- **random(object)** - Returns a randomly chosen object property. |
var isArray = require('./is.js').isArray; | ||
var isNumber = require('./is.js').isNumber; | ||
var isInteger = require('./is.js').isInteger; | ||
var isFloat = require('./is.js').isFloat; | ||
var isObject = require('./is.js').isObject; | ||
module.exports.rand = function(min, max) { | ||
var rand = module.exports.rand = function(min, max) { | ||
return Math.floor(Math.random() * (max - min + 1)) + min; | ||
@@ -9,9 +14,42 @@ } | ||
module.exports.choose = function(items) { | ||
var choose = module.exports.choose = function(items) { | ||
return items[Math.floor((Math.random() * items.length))]; | ||
} | ||
var random = module.exports.random = function() { | ||
if (arguments.length == 0) | ||
return Math.random(); | ||
if (arguments.length == 1) { | ||
var arg = arguments[0]; | ||
if (isArray(arg)) { | ||
return choose(arg); | ||
} | ||
if (isInteger(arg)) { | ||
return Math.floor(Math.random() * arg); | ||
} | ||
if (isObject(arg)) { | ||
return arg[choose(Object.keys(arg))]; | ||
} | ||
} | ||
if (arguments.length == 2) { | ||
if (isInteger(arguments[0]) && isInteger(arguments[1])) { | ||
return rand(arguments[0], arguments[1]); | ||
} | ||
} | ||
return 42; | ||
} | ||
19
yow.js
module.exports.sprintf = require('sprintf-js').sprintf; | ||
module.exports.extend = require('extend'); | ||
module.exports.isType = require('./src/istype.js').isType; | ||
module.exports.isArray = require('./src/istype.js').isArray; | ||
module.exports.isNumber = require('./src/istype.js').isNumber; | ||
module.exports.isString = require('./src/istype.js').isString; | ||
module.exports.isDate = require('./src/istype.js').isDate; | ||
module.exports.isObject = require('./src/istype.js').isObject; | ||
module.exports.isFunction = require('./src/istype.js').isFunction; | ||
module.exports.isType = require('./src/is.js').isType; | ||
module.exports.isArray = require('./src/is.js').isArray; | ||
module.exports.isNumber = require('./src/is.js').isNumber; | ||
module.exports.isString = require('./src/is.js').isString; | ||
module.exports.isDate = require('./src/is.js').isDate; | ||
module.exports.isObject = require('./src/is.js').isObject; | ||
module.exports.isFunction = require('./src/is.js').isFunction; | ||
module.exports.isInteger = require('./src/is.js').isInteger; | ||
module.exports.isFloat = require('./src/is.js').isFloat; | ||
module.exports.rand = require('./src/random.js').rand; | ||
module.exports.choose = require('./src/random.js').choose; | ||
module.exports.random = require('./src/random.js').random; | ||
@@ -15,0 +16,0 @@ module.exports.sprintf = require("sprintf-js").sprintf; |
11404
9
286
44