node package manager

alien-node-list-utils

alien-node-list-utils

Helper functions for arrays on NodeJS. The functions are pure and curried with Ramda.

Build Status Coverage Status npm version Dependency Status

Install

$ npm install alien-node-list-utils --save

Run the specs

$ npm test

Methods

filterOutItem

Given a list and an item, returns a copy of the list absent said item.

 
var listUtils  = require('alien-node-list-utils'),
    list       = ['a', 'b', 'c', 'd'];
    
listUtils.filterOutItem('b', list); // ['a', 'c', 'd'] 
 

filterOutObject

Given a key, value, and list, returns a copy of the list absent the object(s) which match said k/v pair.

 
var listUtils = require('alien-node-list-utils'),
    list      = [{ foo : 'bar'}, {baz : 'bat'}, {buz : 'but'}];
    
listUtils.filterOutObject('baz', 'bat', list); // [{ foo : 'bar'}, {buz : 'but'}] 
 

maybeDropLastItem

Given a qualifying drop length and a list, returns a new list who's last item is dropped if the list length exceeds or equals provided drop length

 
var listUtils = require('alien-node-list-utils'),
    list1     = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'],
    list2     = ['x', 'y', 'z'];
 
listUtils.maybeDropLastItem(5, list1); // ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'] 
listUtils.maybeDropLastItem(5, list2); // ['x', 'y', 'z'] 
 

sortAsc

Simple ascending sorter function

 
var listUtils = require('alien-node-list-utils'),
    list      = ['b', 'd', 'a', 'c'];
 
listUtils.sortAsc(list1); // ['a', 'b', 'c', 'd'] 
 

sortDesc

Simple descending sorter function

 
var listUtils = require('alien-node-list-utils'),
    list      = ['b', 'd', 'a', 'c'];
 
listUtils.sortDesc(list1); // ['d', 'c', 'b', 'a']