Project Description

Functionality.JS is a JavaScript library of collection functions useful for programming in a more "functional" style (hence the name). It is inspired by, but not a direct port, of .NET LINQ; it aims to go beyond LINQ, introducing functions and concepts not found in LINQ. The long-term road-map is to make this library into a a one-stop, comprehensive library for collection functions in JavaScript.

There are other LINQ-style libraries, but Functionality.JS is very simple in concept, easy to get started with ( since we don't use any arcane lambda syntax, the learning curve is essentially zero), and easy to integrate into your existing code (since it's just plain JavaScript). For now, there is no concept of lazy evaluation and other such features. All that is provided is a straightforward set of functions for repetitively applying a function to a collection object. Functionality.JS helps you to banish for-loops and a lot of repetitive and error-prone procedural code from your JavaScript code.

Example Usage:
Using Functionality.JS is as simple as calling the appropriate method on an array (or Dictionary object), e.g.,

var arr = ['a', 'b', 'c', null, 'e'];"}
var noNulls = arr.where(function(x) { return x != null; });

Last edited Jun 5, 2015 at 11:59 PM by prmph, version 9