This is a javascript implementation of the .NET LINQ library.
It contains all the origial .NET methods plus additional ones.
npm install linq
// C# LINQ - delegate
Enumerable.Range(1, 10)
.Where(delegate(int i) { return i % 3 == 0; })
.Select(delegate(int i) { return i * 10; });
// linq.js - anonymous function
Enumerable.range(1, 10)
.where(function(i) { return i % 3 == 0; })
.select(function(i) { return i * 10; });
// C# LINQ - lambda
Enumerable.Range(1, 10).Where(i => i % 3 == 0).Select(i => i * 10);
// linq.js - arrow function
Enumerable.range(1, 10).where(i => i % 3 == 0).select(i => i * 10);
// C# LINQ - anonymous type
array.Select((val, i) => new { Value = val, Index = i });
// linq.js - object literal
Enumerable.from(array).select((val, i) => ({ value: val, index: i}));
See sample/tutorial.js for more examples.
Yoshifumi Kawai developed the original version of this library, currently no longer maintained.