functional.js
Advanced tools
Comparing version
@@ -7,20 +7,10 @@ { | ||
"homepage": "http://functionaljs.com", | ||
"version": "0.3.12", | ||
"version": "0.3.13", | ||
"keywords": [ | ||
"functional", | ||
"lambda", | ||
"collection", | ||
"iterator", | ||
"each", | ||
"reduce", | ||
"assign", | ||
"curry", | ||
"arity", | ||
"apply", | ||
"assign", | ||
"compose", | ||
"partition", | ||
"pluck", | ||
"λ", | ||
"array", | ||
"iterator", | ||
"lambda", | ||
"underscore" | ||
@@ -27,0 +17,0 @@ ], |
@@ -113,3 +113,3 @@ var λ = (function () { | ||
λ.select = λ.curry(function (iterator, items) { | ||
λ.select = λ.filter = λ.curry(function (iterator, items) { | ||
checkFunction(iterator); | ||
@@ -116,0 +116,0 @@ var filtered = [], |
/*! | ||
functional.js (v0.3.12) 25-06-2014 | ||
functional.js (v0.3.13) 26-06-2014 | ||
(c) Lee Crossley <leee@hotmail.co.uk> (http://ilee.co.uk/) | ||
*/ | ||
var lambda=function(){"use strict";var a={},b="hardReturn;",c=function(a){return a.length>0?[].slice.call(a,0):[]},d=function(a){if(!a||"function"!=typeof a)throw"lambda Error: Invalid function"};return a.curry=function(b){return d(b),function e(){var d=c(arguments);if(d.length===b.length)return b.apply(null,d);if(d.length>b.length){var f=b.apply(null,d);return a.reduce(b,f,d.slice(b.length))}return function(){var a=c(arguments);return e.apply(null,d.concat(a))}}},a.each=a.curry(function(a,c){d(a);for(var e=0;e<c.length;e++)if(a.call(null,c[e],e)===b)return}),a.map=a.curry(function(b,c){d(b);var e,f=[];return e=a.each(function(){f.push(b.apply(null,arguments))}),e(c),f}),a.reduce=a.reducel=a.curry(function(b,c,e){d(b);var f,g=c;return f=a.each(function(a){g=b.call(null,g,a)}),f(e),g}),a.clone=function(b){var c=[];return a.each(function(a){c.push(a)},b),c},a.first=a.curry(function(c,e){d(c);var f;return a.each(function(a){return c.call(null,a)?(f=a,b):void 0},e),f}),a.last=a.curry(function(b,c){var d=a.clone(c);return a.first(b,d.reverse())}),a.every=a.all=a.curry(function(c,e){d(c);var f=!0;return a.each(function(a){return c.call(null,a)?void 0:(f=!1,b)},e),f}),a.any=a.contains=a.curry(function(c,e){d(c);var f=!1;return a.each(function(a){return c.call(null,a)?(f=!0,b):void 0},e),f}),a.select=a.curry(function(b,c){d(b);var e,f=[];return e=a.each(function(a){b.call(null,a)&&f.push(a)}),e(c),f}),a.best=a.curry(function(b){var c=function(c,d){return a.exists(c)&&b.call(this,c,d)?c:d};return a.reduce(c,null)}),a.compose=function(b){var d=a.any(function(a){return"function"!=typeof a});if(b=c(arguments),d(b))throw"lambda Error: Invalid function to compose";return function(){var c=arguments,d=a.each(function(a){c=[a.apply(null,c)]});return d(b.reverse()),c[0]}},a.partition=a.curry(function(b,c){d(b);var e,f=[],g=[];return e=a.each(function(a){(b.call(null,a)?f:g).push(a)}),e(c),[f,g]}),a.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)},a.toArray=function(b){return a.map(function(a){return[a,b[a]]},Object.keys(b))},a.apply=a.curry(function(b,c){var d=[];return a.isArray(b)&&(d=[].slice.call(b,1),b=b[0]),a.map(function(a){return a[b].apply(a,d)},c)}),a.assign=a.extend=a.curry(function(b,c){return a.each(function(a){c[a]=b[a]},Object.keys(b)),c}),a.prop=function(a){return function(b){return b[a]}},a.pluck=a.curry(function(b,c){return a.map(a.prop(b),c)}),a.exists=function(a){return null!=a},a.truthy=function(b){return a.exists(b)&&b!==!1},a.falsy=function(b){return!a.truthy(b)},a}();"undefined"!=typeof exports&&("undefined"!=typeof module&&module.exports&&(exports=module.exports=lambda),exports.lambda=lambda); | ||
var lambda=function(){"use strict";var a={},b="hardReturn;",c=function(a){return a.length>0?[].slice.call(a,0):[]},d=function(a){if(!a||"function"!=typeof a)throw"lambda Error: Invalid function"};return a.curry=function(b){return d(b),function e(){var d=c(arguments);if(d.length===b.length)return b.apply(null,d);if(d.length>b.length){var f=b.apply(null,d);return a.reduce(b,f,d.slice(b.length))}return function(){var a=c(arguments);return e.apply(null,d.concat(a))}}},a.each=a.curry(function(a,c){d(a);for(var e=0;e<c.length;e++)if(a.call(null,c[e],e)===b)return}),a.map=a.curry(function(b,c){d(b);var e,f=[];return e=a.each(function(){f.push(b.apply(null,arguments))}),e(c),f}),a.reduce=a.reducel=a.curry(function(b,c,e){d(b);var f,g=c;return f=a.each(function(a){g=b.call(null,g,a)}),f(e),g}),a.clone=function(b){var c=[];return a.each(function(a){c.push(a)},b),c},a.first=a.curry(function(c,e){d(c);var f;return a.each(function(a){return c.call(null,a)?(f=a,b):void 0},e),f}),a.last=a.curry(function(b,c){var d=a.clone(c);return a.first(b,d.reverse())}),a.every=a.all=a.curry(function(c,e){d(c);var f=!0;return a.each(function(a){return c.call(null,a)?void 0:(f=!1,b)},e),f}),a.any=a.contains=a.curry(function(c,e){d(c);var f=!1;return a.each(function(a){return c.call(null,a)?(f=!0,b):void 0},e),f}),a.select=a.filter=a.curry(function(b,c){d(b);var e,f=[];return e=a.each(function(a){b.call(null,a)&&f.push(a)}),e(c),f}),a.best=a.curry(function(b){var c=function(c,d){return a.exists(c)&&b.call(this,c,d)?c:d};return a.reduce(c,null)}),a.compose=function(b){var d=a.any(function(a){return"function"!=typeof a});if(b=c(arguments),d(b))throw"lambda Error: Invalid function to compose";return function(){var c=arguments,d=a.each(function(a){c=[a.apply(null,c)]});return d(b.reverse()),c[0]}},a.partition=a.curry(function(b,c){d(b);var e,f=[],g=[];return e=a.each(function(a){(b.call(null,a)?f:g).push(a)}),e(c),[f,g]}),a.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)},a.toArray=function(b){return a.map(function(a){return[a,b[a]]},Object.keys(b))},a.apply=a.curry(function(b,c){var d=[];return a.isArray(b)&&(d=[].slice.call(b,1),b=b[0]),a.map(function(a){return a[b].apply(a,d)},c)}),a.assign=a.extend=a.curry(function(b,c){return a.each(function(a){c[a]=b[a]},Object.keys(b)),c}),a.prop=function(a){return function(b){return b[a]}},a.pluck=a.curry(function(b,c){return a.map(a.prop(b),c)}),a.exists=function(a){return null!=a},a.truthy=function(b){return a.exists(b)&&b!==!1},a.falsy=function(b){return!a.truthy(b)},a}();"undefined"!=typeof exports&&("undefined"!=typeof module&&module.exports&&(exports=module.exports=lambda),exports.lambda=lambda); |
/*! | ||
functional.js (v0.3.12) 25-06-2014 | ||
functional.js (v0.3.13) 26-06-2014 | ||
(c) Lee Crossley <leee@hotmail.co.uk> (http://ilee.co.uk/) | ||
*/ | ||
var λ=function(){"use strict";var a={},b="hardReturn;",c=function(a){return a.length>0?[].slice.call(a,0):[]},d=function(a){if(!a||"function"!=typeof a)throw"λ Error: Invalid function"};return a.curry=function(b){return d(b),function e(){var d=c(arguments);if(d.length===b.length)return b.apply(null,d);if(d.length>b.length){var f=b.apply(null,d);return a.reduce(b,f,d.slice(b.length))}return function(){var a=c(arguments);return e.apply(null,d.concat(a))}}},a.each=a.curry(function(a,c){d(a);for(var e=0;e<c.length;e++)if(a.call(null,c[e],e)===b)return}),a.map=a.curry(function(b,c){d(b);var e,f=[];return e=a.each(function(){f.push(b.apply(null,arguments))}),e(c),f}),a.reduce=a.reducel=a.curry(function(b,c,e){d(b);var f,g=c;return f=a.each(function(a){g=b.call(null,g,a)}),f(e),g}),a.clone=function(b){var c=[];return a.each(function(a){c.push(a)},b),c},a.first=a.curry(function(c,e){d(c);var f;return a.each(function(a){return c.call(null,a)?(f=a,b):void 0},e),f}),a.last=a.curry(function(b,c){var d=a.clone(c);return a.first(b,d.reverse())}),a.every=a.all=a.curry(function(c,e){d(c);var f=!0;return a.each(function(a){return c.call(null,a)?void 0:(f=!1,b)},e),f}),a.any=a.contains=a.curry(function(c,e){d(c);var f=!1;return a.each(function(a){return c.call(null,a)?(f=!0,b):void 0},e),f}),a.select=a.curry(function(b,c){d(b);var e,f=[];return e=a.each(function(a){b.call(null,a)&&f.push(a)}),e(c),f}),a.best=a.curry(function(b){var c=function(c,d){return a.exists(c)&&b.call(this,c,d)?c:d};return a.reduce(c,null)}),a.compose=function(b){var d=a.any(function(a){return"function"!=typeof a});if(b=c(arguments),d(b))throw"λ Error: Invalid function to compose";return function(){var c=arguments,d=a.each(function(a){c=[a.apply(null,c)]});return d(b.reverse()),c[0]}},a.partition=a.curry(function(b,c){d(b);var e,f=[],g=[];return e=a.each(function(a){(b.call(null,a)?f:g).push(a)}),e(c),[f,g]}),a.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)},a.toArray=function(b){return a.map(function(a){return[a,b[a]]},Object.keys(b))},a.apply=a.curry(function(b,c){var d=[];return a.isArray(b)&&(d=[].slice.call(b,1),b=b[0]),a.map(function(a){return a[b].apply(a,d)},c)}),a.assign=a.extend=a.curry(function(b,c){return a.each(function(a){c[a]=b[a]},Object.keys(b)),c}),a.prop=function(a){return function(b){return b[a]}},a.pluck=a.curry(function(b,c){return a.map(a.prop(b),c)}),a.exists=function(a){return null!=a},a.truthy=function(b){return a.exists(b)&&b!==!1},a.falsy=function(b){return!a.truthy(b)},a}();"undefined"!=typeof exports&&("undefined"!=typeof module&&module.exports&&(exports=module.exports=λ),exports.λ=λ); | ||
var λ=function(){"use strict";var a={},b="hardReturn;",c=function(a){return a.length>0?[].slice.call(a,0):[]},d=function(a){if(!a||"function"!=typeof a)throw"λ Error: Invalid function"};return a.curry=function(b){return d(b),function e(){var d=c(arguments);if(d.length===b.length)return b.apply(null,d);if(d.length>b.length){var f=b.apply(null,d);return a.reduce(b,f,d.slice(b.length))}return function(){var a=c(arguments);return e.apply(null,d.concat(a))}}},a.each=a.curry(function(a,c){d(a);for(var e=0;e<c.length;e++)if(a.call(null,c[e],e)===b)return}),a.map=a.curry(function(b,c){d(b);var e,f=[];return e=a.each(function(){f.push(b.apply(null,arguments))}),e(c),f}),a.reduce=a.reducel=a.curry(function(b,c,e){d(b);var f,g=c;return f=a.each(function(a){g=b.call(null,g,a)}),f(e),g}),a.clone=function(b){var c=[];return a.each(function(a){c.push(a)},b),c},a.first=a.curry(function(c,e){d(c);var f;return a.each(function(a){return c.call(null,a)?(f=a,b):void 0},e),f}),a.last=a.curry(function(b,c){var d=a.clone(c);return a.first(b,d.reverse())}),a.every=a.all=a.curry(function(c,e){d(c);var f=!0;return a.each(function(a){return c.call(null,a)?void 0:(f=!1,b)},e),f}),a.any=a.contains=a.curry(function(c,e){d(c);var f=!1;return a.each(function(a){return c.call(null,a)?(f=!0,b):void 0},e),f}),a.select=a.filter=a.curry(function(b,c){d(b);var e,f=[];return e=a.each(function(a){b.call(null,a)&&f.push(a)}),e(c),f}),a.best=a.curry(function(b){var c=function(c,d){return a.exists(c)&&b.call(this,c,d)?c:d};return a.reduce(c,null)}),a.compose=function(b){var d=a.any(function(a){return"function"!=typeof a});if(b=c(arguments),d(b))throw"λ Error: Invalid function to compose";return function(){var c=arguments,d=a.each(function(a){c=[a.apply(null,c)]});return d(b.reverse()),c[0]}},a.partition=a.curry(function(b,c){d(b);var e,f=[],g=[];return e=a.each(function(a){(b.call(null,a)?f:g).push(a)}),e(c),[f,g]}),a.isArray=function(a){return"[object Array]"===Object.prototype.toString.call(a)},a.toArray=function(b){return a.map(function(a){return[a,b[a]]},Object.keys(b))},a.apply=a.curry(function(b,c){var d=[];return a.isArray(b)&&(d=[].slice.call(b,1),b=b[0]),a.map(function(a){return a[b].apply(a,d)},c)}),a.assign=a.extend=a.curry(function(b,c){return a.each(function(a){c[a]=b[a]},Object.keys(b)),c}),a.prop=function(a){return function(b){return b[a]}},a.pluck=a.curry(function(b,c){return a.map(a.prop(b),c)}),a.exists=function(a){return null!=a},a.truthy=function(b){return a.exists(b)&&b!==!1},a.falsy=function(b){return!a.truthy(b)},a}();"undefined"!=typeof exports&&("undefined"!=typeof module&&module.exports&&(exports=module.exports=λ),exports.λ=λ); |
@@ -6,26 +6,11 @@ { | ||
"homepage": "http://functionaljs.com", | ||
"version": "0.3.12", | ||
"version": "0.3.13", | ||
"main": "functional.min.js", | ||
"keywords": [ | ||
"functional", | ||
"functional js", | ||
"functionaljs", | ||
"functional.js", | ||
"functional-js", | ||
"lambda", | ||
"collection", | ||
"iterator", | ||
"each", | ||
"reduce", | ||
"assign", | ||
"curry", | ||
"arity", | ||
"apply", | ||
"assign", | ||
"compose", | ||
"partition", | ||
"pluck", | ||
"best", | ||
"λ", | ||
"array", | ||
"iterator", | ||
"lambda", | ||
"underscore" | ||
@@ -32,0 +17,0 @@ ], |
392
README.md
# functional.js (λ) [](https://travis-ci.org/leecrossley/functional-js) [](https://npmjs.org/package/functional.js) [](https://david-dm.org/leecrossley/functional-js#info=devDependencies) | ||
functional.js is a functional JavaScript library. It facilitates [currying](http://en.wikipedia.org/wiki/Currying) and [point-free / tacit](http://en.wikipedia.org/wiki/Tacit_programming) programming. | ||
<img align="right" src="http://functionaljs.com/css/images/logo@2x.png"> | ||
**functional.js is a functional JavaScript library.** | ||
## Getting started | ||
It facilitates [currying](http://en.wikipedia.org/wiki/Currying) and [point-free / tacit](http://en.wikipedia.org/wiki/Tacit_programming) programming. | ||
### Using npm | ||
### Documentation | ||
``` | ||
npm install functional.js | ||
``` | ||
Visit [functionaljs.com](http://functionaljs.com/) for the full documentation. | ||
To then include functional.min.js in your app: | ||
### Quick example | ||
``` | ||
var λ = require("functional.js"); | ||
``` | ||
### Direct dependency | ||
Download the minified version [here](http://bit.ly/funcmin), reference the js file and λ will become a global variable. | ||
### Using client side | ||
There are possible issues with using the "λ" character client side. There shouldn't be, but there are. If you experience issues, there is an alternative client version, functional.min.client.js which uses "lambda" instead of "λ". Download the minified client version [here](http://bit.ly/funcclient), reference the js file and lambda will become a global variable. | ||
## Examples | ||
### Basic λ.curry example | ||
```javascript | ||
var concatenate = λ.curry(function(word1, word2) { | ||
return word1 + " " + word2; | ||
}); | ||
var concatenateHello = concatenate("Hello"); | ||
var result = concatenateHello("World"); | ||
expect(result).toEqual("Hello World"); | ||
``` | ||
### Another λ.curry example | ||
```javascript | ||
var add = λ.curry(function(arg1, arg2, arg3) { | ||
return arg1 + arg2 + arg3; | ||
}); | ||
var add3 = add(3), | ||
add5 = add3(2); | ||
expect(add(3)(2)(1)).toEqual(6); | ||
expect(add3(2, 1)).toEqual(6); | ||
expect(add3(2)(1)).toEqual(6); | ||
expect(add5(1)).toEqual(6); | ||
``` | ||
### Extending arity with λ.curry example | ||
```javascript | ||
var add = λ.curry(function(arg1, arg2) { | ||
@@ -68,338 +22,8 @@ return arg1 + arg2; | ||
expect(add(1, 2, 3)).toEqual(6); | ||
expect(add3(1, 2, 3, 4, 5)).toEqual(18); | ||
add(1, 2, 3); // => 6 | ||
add3(1, 2, 3, 4, 5); // => 18 | ||
``` | ||
### Curried λ.each example | ||
```javascript | ||
var result = [], | ||
items = ["f", "u", "n", "c"]; | ||
var addTo = function (item) { | ||
return result.push(item); | ||
}; | ||
var addToResult = λ.each(addTo); | ||
expect(typeof (addToResult)).toEqual("function"); | ||
addToResult(items); | ||
expect(result).toEqual(["f", "u", "n", "c"]); | ||
``` | ||
### Curried λ.map example | ||
```javascript | ||
var items = [1, 2, 3]; | ||
var doubleUp = function (number) { | ||
return number * 2; | ||
}; | ||
var doubleMap = λ.map(doubleUp); | ||
expect(typeof (doubleMap)).toEqual("function"); | ||
var result = doubleMap(items); | ||
expect(result).toEqual([2, 4, 6]); | ||
``` | ||
### Curried λ.reduce example | ||
```javascript | ||
var items = [1, 2, 3]; | ||
var multiply = function (arg1, arg2) { | ||
return arg1 * arg2; | ||
}; | ||
var multiplyReduceFrom1 = λ.reduce(multiply, 1); | ||
expect(typeof (multiplyReduceFrom1)).toEqual("function"); | ||
var result = multiplyReduceFrom1(items); | ||
expect(result).toEqual(6); | ||
``` | ||
### Curried λ.any example | ||
```javascript | ||
var items1 = [1, 2, 3], | ||
items2 = [1, 3, 5]; | ||
var even = function (item) { | ||
return item % 2 === 0; | ||
}; | ||
var anyEven = λ.any(even); | ||
expect(anyEven(items1)).toBeTruthy(); | ||
expect(anyEven(items2)).not.toBeTruthy(); | ||
``` | ||
### Curried λ.select example | ||
```javascript | ||
var items = [1, 2, 3, 4, 5]; | ||
var even = function (item) { | ||
return item % 2 === 0; | ||
}; | ||
var odd = function (item) { | ||
return item % 2 !== 0; | ||
}; | ||
var selectEven = λ.select(even); | ||
var selectOdd = λ.select(odd); | ||
expect(selectEven(items)).toEqual([2, 4]); | ||
expect(selectOdd(items)).toEqual([1, 3, 5]); | ||
``` | ||
### Curried λ.first example | ||
```javascript | ||
var items = [5, 4, 3, 2, 1]; | ||
var even = function (item) { | ||
return item % 2 === 0; | ||
}; | ||
var odd = function (item) { | ||
return item % 2 !== 0; | ||
}; | ||
var firstEven = λ.first(even); | ||
var firstOdd = λ.first(odd); | ||
expect(firstEven(items)).toEqual(2); | ||
expect(firstOdd(items)).toEqual(1); | ||
``` | ||
### Curried λ.last example | ||
```javascript | ||
var items = [5, 4, 3, 2, 1]; | ||
var even = function (item) { | ||
return item % 2 === 0; | ||
}; | ||
var odd = function (item) { | ||
return item % 2 !== 0; | ||
}; | ||
var lastEven = λ.last(even); | ||
var lastOdd = λ.last(odd); | ||
expect(lastEven(items)).toEqual(2); | ||
expect(lastOdd(items)).toEqual(1); | ||
``` | ||
### Curried λ.best example | ||
```javascript | ||
var words = ["simply", "the", "best"]; | ||
var longest = λ.best(function (arg1, arg2) { | ||
return arg1.length > arg2.length; | ||
}); | ||
expect(typeof (longest)).toEqual("function"); | ||
expect(longest(words)).toEqual("simply"); | ||
``` | ||
### Curried λ.every example | ||
```javascript | ||
var items = [2, 4, 6, 8]; | ||
var even = function (item) { | ||
return item % 2 === 0; | ||
}; | ||
var odd = function (item) { | ||
return item % 2 !== 0; | ||
}; | ||
var everyEven = λ.every(even); | ||
var everyOdd = λ.every(odd); | ||
expect(everyEven(items)).toEqual(true); | ||
expect(everyOdd(items)).toEqual(false); | ||
``` | ||
### Multiple λ.compose example | ||
```javascript | ||
var e = function (a) { | ||
return "hello " + a; | ||
}; | ||
var f = function (a) { | ||
return a + 1; | ||
}; | ||
var g = function (a) { | ||
return a * 100; | ||
}; | ||
var composed = λ.compose(e, f, g); | ||
expect(composed(2)).toEqual("hello 201"); | ||
``` | ||
### Curried λ.partition example | ||
```javascript | ||
var items = [7, 6, 5, 4, 3, 2, 1]; | ||
var even = function (item) { | ||
return item % 2 === 0; | ||
}; | ||
var partitionEven = λ.partition(even); | ||
var result = partitionEven(items); | ||
expect(result).toEqual([[6, 4, 2], [7, 5, 3, 1]]); | ||
``` | ||
### λ.toArray example (featuring λ.isArray) | ||
```javascript | ||
var obj = { | ||
"p1": "abc", | ||
"p2": false, | ||
"p3": null | ||
}; | ||
var result = λ.toArray(obj); | ||
expect(result).toEqual([["p1", "abc"], ["p2", false], ["p3", null]]); | ||
expect(λ.isArray(obj)).toBeFalsy(); | ||
expect(λ.isArray(result)).toBeTruthy(); | ||
``` | ||
### λ.apply example | ||
```javascript | ||
var items = ["Hello", "World"]; | ||
var applyCase = λ.apply("toUpperCase"); | ||
var result = applyCase(items); | ||
expect(result).toEqual(["HELLO", "WORLD"]); | ||
``` | ||
### λ.apply (multiple argument) example | ||
```javascript | ||
var items = ["Hello", "World"]; | ||
var applyIndexOf = λ.apply(["substring", "1", "4"]); | ||
var result = applyIndexOf(items); | ||
expect(result).toEqual(["ell", "orl"]); | ||
``` | ||
### Basic λ.assign (λ.extend) example | ||
```javascript | ||
var obj1 = { | ||
prop1: "obj1prop1", | ||
prop2: "obj1prop2" | ||
}; | ||
var obj2 = { | ||
prop2: "obj2prop2", | ||
prop3: "obj2prop3" | ||
}; | ||
var result = λ.assign(obj1, obj2); | ||
expect(result).toEqual({ | ||
prop1: "obj1prop1", | ||
prop2: "obj1prop2", | ||
prop3: "obj2prop3" | ||
}); | ||
``` | ||
### Extend λ.assign arity with λ.curry example | ||
```javascript | ||
var obj1 = { | ||
prop1: "obj1prop1", | ||
prop2: "obj1prop2" | ||
}; | ||
var obj2 = { | ||
prop2: "obj2prop2", | ||
prop3: "obj2prop3", | ||
prop4: "obj2prop4" | ||
}; | ||
var obj3 = { | ||
prop4: "obj3prop4", | ||
prop5: "obj3prop5" | ||
}; | ||
var assignToObj1 = λ.assign(obj1); | ||
var result1 = assignToObj1(obj2, obj3); | ||
var result2 = λ.assign(obj1, obj2, obj3); | ||
expect(result1).toEqual({ | ||
prop1: "obj1prop1", | ||
prop2: "obj1prop2", | ||
prop3: "obj2prop3", | ||
prop4: "obj2prop4", | ||
prop5: "obj3prop5" | ||
}); | ||
expect(result1).toEqual(result2); | ||
``` | ||
### λ.pluck with λ.curry example | ||
```javascript | ||
var items = [{ | ||
"p1": "abc", | ||
"p2": 123 | ||
}, { | ||
"p1": "cab", | ||
"p2": 312 | ||
},{ | ||
"p1": "bca", | ||
"p2": 231 | ||
}]; | ||
var pluck1 = λ.pluck("p1"); | ||
var result1 = pluck1(items); | ||
expect(result1).toEqual(["abc", "cab", "bca"]); | ||
``` | ||
### λ.exists example | ||
```javascript | ||
expect(λ.exists(undefined)).toBeFalsy(); | ||
expect(λ.exists(null)).toBeFalsy(); | ||
expect(λ.exists(1)).toBeTruthy(); | ||
expect(λ.exists("abc")).toBeTruthy(); | ||
``` | ||
### λ.truthy example | ||
```javascript | ||
expect(λ.truthy(false)).toBeFalsy(); | ||
expect(λ.truthy(null)).toBeFalsy(); | ||
expect(λ.truthy(true)).toBeTruthy(); | ||
expect(λ.truthy("abc")).toBeTruthy(); | ||
``` | ||
### λ.falsy example | ||
```javascript | ||
expect(λ.falsy(false)).toBeTruthy(); | ||
expect(λ.falsy(null)).toBeTruthy(); | ||
expect(λ.falsy(true)).toBeFalsy(); | ||
expect(λ.falsy("abc")).toBeFalsy(); | ||
``` | ||
## License | ||
[MIT License](http://ilee.mit-license.org) |
34061
-17.7%733
-1.35%29
-92.84%