enumerable-linq
v1.0.4
Published
linq library for data
Downloads
11
Readme
Enumerable-linq
Features
- Fluent interface
- Immutable
- Lazy Evaluation
- Memoization
Install
npm install enumerable-linq
Using
import Enumerable from 'enumerable-linq';
const people = new Enumerable([
{
age: 37,
name: 'Bobbie Hanson',
gender: 'female',
group: 6,
},
{
age: 38,
name: 'Leon Oneill',
gender: 'male',
group: 7,
},
{
age: 26,
name: 'Leach Christensen',
gender: 'male',
group: 9,
},
]);
const newGroup = people.select(person => person.group)
.where(person => person.group > 6);
newGroup.length(); //2
newGroup.toArray();
//[
// {
// age: 38,
// name: 'Leon Oneill',
// gender: 'male',
// group: 7,
// },
// {
// age: 26,
// name: 'Leach Christensen',
// gender: 'male',
// group: 9,
// },
//];
Documentation
Table of Contents
where
Query from object
Parameters
predicates
...any
Examples
const coll = new Enumerable([{age: 37,name: 'Bobbie Hanson',gender: 'female',group: 6,},
{age: 38,name: 'Leon Oneill',gender: 'male',group: 7,},]);
const result = coll.where(obj => obj['age'] > 37)//where(obj => obj['age'] > 37, {gender: male})
.where({gender: male})
result.toArray(); //[{age: 38,name: 'Leon Oneill',gender: 'male',group: 7,}]
Returns Enumerable
select
Select properties
Parameters
f
Examples
const coll = new Enumerable([{age: 37,name: 'Bobbie Hanson',gender: 'female',group: 6,},
{age: 38,name: 'Leon Oneill',gender: 'male',group: 7,},]);
coll.select(person => person.gender).toArray()//['female', 'male']
Returns Enumerable
orderBy
Order collection
Parameters
f
(sort function)direction
Examples
const coll = new Enumerable([{age: 37,name: 'Bobbie Hanson',gender: 'female',group: 6,},
{age: 38,name: 'Leon Oneill',gender: 'male',group: 7,},]);
coll.order(person => person.age, 'desc');
//[{age: 38,name: 'Leon Oneill',gender: 'male',group: 7,},
//{age: 37,name: 'Bobbie Hanson',gender: 'female',group: 6,},]
Returns Enumerable
toArray
Returns array from object
Examples
const coll = new Enumerable([{age: 37,name: 'Bobbie Hanson',gender: 'female',group: 6,},
{age: 38,name: 'Leon Oneill',gender: 'male',group: 7,},]);
coll.toArray(); //[{age: 37,name: 'Bobbie Hanson',gender: 'female',group: 6,},
// {age: 38,name: 'Leon Oneill',gender: 'male',group: 7,},]
Returns array
length
Returns number of elements
Examples
const coll = new Enumerable([{age: 37,name: 'Bobbie Hanson',gender: 'female',group: 6,},
{age: 38,name: 'Leon Oneill',gender: 'male',group: 7,},]);
coll.length(); //2
Returns int