0.0.13 • Published 11 years ago

handy v0.0.13

Weekly downloads
7,895
License
-
Repository
github
Last release
11 years ago

build status

handy

Bunch of common utility functions

Functionality

  • getVersion

    • arguments
      1. path where package.json is present (optional)
    • returns
      • value of 'version' in package.json (or)
      • emptry string if unable to find package.json
    • example:

        var handy = require('handy');
        var ver = handy.getVersion(__dirname);
  • getUserHome

    • returns - home directory for current user (platform agnostic)

        var handy = require('handy');
        var home = handy.getUserHome();
  • getType

    • arguments
      1. object - for which type to be determined
    • returns - type of the object in lowercase ('number', 'array', 'object', 'regex' ...)

        var handy = require('handy');
        var xyz = [1,2,3];
        if(handy.getType(xyz)=='array') { 
          ... do something ...
        };
  • getFileExtension

    • arguments
      1. filename - filename for which the extension to be returned
      2. defaultExt - default extension if no extension found
    • returns - extension from the filename (or) defaultExt

        var handy = require('handy');
        var x = "abc/this/there.x.y.j"
        var r = handy.getFileExtension(x);
        // r => 'j'
  • isArrayEqual - check if two arrays are equal, irrespective of order of elements

    • arguments: pass two array objects
    • returns - true (if both arrays are equal), else false

        var handy = require('handy');
        var x = [93,1,6], y=[6,93,1];
        var r = handy.isArrayEqual(x,y);
        // r => true
  • isObjectEqual - check if two objects are equal, irrespective of order of keys (if value is an array, it is expected to be in same order)

    • arguments: pass two objects
    • returns - true (if both objects are equal), else false

        var handy = require('handy');
        var x = {a:'hello', b:{scores:[1,2,3], name:'tal'}, id:123}, y={id:123,a:'hello',b:{name:'tal',scores:[1,2,3]}};
        var r = handy.isObjectEqual(x,y);
        // r => true
  • merge - shallow merge objects

    • arguments
      1. variable arguments, pass objects that needs to be merged
    • returns - merged object (or) {}

        var handy = require('handy');
        var x = {a:1}, y={b:2}, z={a:4,c:5};
        var r = handy.merge(x,y,z);
        // r => {a:4, b:2, c:5}
  • deepMerge - merge objects, all hashes at all levels are merged (arrays left intact)

    • arguments
      1. variable arguments, pass objects that needs to be deep merged
    • returns - merged object (or) {}

        var handy = require('handy');
        var x = {a:1,p:{a:5}}, y={b:2}, z={a:4,c:5,p:{a:3,b:11}};
        var r = handy.deepMerge(x,y,z);
        // r => {a:4, b:2, c:5, p:{a:3,b:11}}

Install

$ npm install handy
# please include handy to your package.json

Test cases

To execute full test cases

$ make
0.0.13

11 years ago

0.0.12

11 years ago

0.0.11

11 years ago

0.0.10

11 years ago

0.0.9

11 years ago

0.0.8

11 years ago

0.0.7

12 years ago

0.0.6

12 years ago

0.0.5

12 years ago

0.0.4

12 years ago

0.0.3

12 years ago

0.0.2

12 years ago

0.0.1

12 years ago