This is a javascript implementation of the .NET LINQ library.
It contains all the original .NET methods plus a few additions.
With npm:
npm install linq
CDN availability:
CDN | URL |
---|---|
unpkg |
https://unpkg.com/linq/ |
jsDelivr |
https://jsdelivr.com/package/npm/linq |
packd |
https://bundle.run/linq@latest?name=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.