|
Enumerable.Range(0, 20) |
0:0 |
| method name | return type | arguments | example (click code) |
| Choice | Enumerable | params T obj |
Enumerable.Choice("a","b","c","d").Take(10)
Enumerable.Choice(["a","b","c","d"]).Take(10) |
| Cycle | Enumerable | params T obj |
Enumerable.Cycle(1,"foo",true).Take(10) Enumerable.Cycle([1,"foo",true]).Take(10) |
| Empty | Enumerable | () |
Enumerable.Empty() |
| From | Enumerable | Array obj |
var arr = [1,124,"aaa",function(){},false];
Enumerable.From(arr)
|
| Object obj |
var obj = {a:3,b:"3",z:function(){},d:true};
Enumerable.From(obj).Select("$.Key + ‘:‘ + $.Value")
|
||
| NodeList obj |
var node = document.getElementsByTagName("h2");
Enumerable.From(node).Select("$.innerHTML")
|
||
| Number obj |
Enumerable.From(5) |
||
| String obj |
Enumerable.From("foobar")
|
||
| IEnumerable(WSH) obj |
// using with Windows Script Host
// var fso = WScript.CreateObject("Scripting.FileSystemObject");
// var files = fso.GetFolder("C:\\").Files;
// Enumerable.From(files).Select("$.Name").ForEach("WScript.Echo($)");
|
||
| Return | Enumerable | T element |
Enumerable.Return("foobar")
|
| Matches | Enumerable | string input, RegExp pattern |
Enumerable.Matches("xbcyBCzbc", /(.)bc/i)
.Select("‘index=‘+$.index+‘ all=‘+$[0]+‘ capture=‘+$[1]")
|
| string input, string pattern |
Enumerable.Matches("xbcyBCzbc", "(.)bc")
.Select("‘index=‘+$.index+‘ all=‘+$[0]+‘ capture=‘+$[1]")
|
||
| string input, string pattern, string flags |
Enumerable.Matches("xbcyBCzbc", "(.)bc", "i")
.Select("‘index=‘+$.index+‘ all=‘+$[0]+‘ capture=‘+$[1]")
|
||
| Range | Enumerable | int start, int count |
Enumerable.Range(10,5) |
| int start, int count, int step |
Enumerable.Range(10,5,3) |
||
| RangeDown | Enumerable | int start, int count |
Enumerable.RangeDown(10,5) |
| int start, int count, int step |
Enumerable.RangeDown(10,5,3) |
||
| RangeTo | Enumerable | int start, int to |
Enumerable.RangeTo(10,18) Enumerable.RangeTo(3,-5) |
| int start, int to, int step |
Enumerable.RangeTo(1,9,3) Enumerable.RangeTo(1,-9,3) |
||
| Repeat | Enumerable | T obj |
Enumerable.Repeat(3).Take(5) |
| T obj, int count |
Enumerable.Repeat("foo",10)
|
||
| RepeatWithFinalize | Enumerable | T initializer(), void finalizer(T) |
// example for WScript(Text EnumerateLines and Finally Close)
// var fso = WScript.CreateObject("Scripting.FileSystemObject");
// Enumerable.RepeatWithFinalize(
// function () { return fso.OpenTextFile("C:\\file.txt") },
// function (ts) { ts.Close() })
// .TakeWhile(function (ts) { return !ts.AtEndOfStream })
// .Select(function (ts) { return ts.ReadLine() });
|
| Generate | Enumerable | T func() |
Enumerable.Generate("Math.random()").Take(5)
|
| T func(), int count |
Enumerable.Generate("Math.random()", 5)
|
||
| ToInfinity | Enumerable | () |
Enumerable.ToInfinity().Take(5) |
| int start |
Enumerable.ToInfinity(1000).Take(5) |
||
| int start, int step |
Enumerable.ToInfinity(1000,5).Take(5) |
||
| ToNegativeInfinity | Enumerable | () |
Enumerable.ToNegativeInfinity().Take(5) |
| int start |
Enumerable.ToNegativeInfinity(1000).Take(5) |
||
| int start, int step |
Enumerable.ToNegativeInfinity(1000,5).Take(5) |
||
| Unfold | Enumerable | T seed, T func(T) |
Enumerable.Unfold(5, "$+3").Take(10) |
| method name | return type | arguments | example (click code) |
| CascadeBreadthFirst | Enumerable | T[] func(T) |
Enumerable.Return(1).CascadeBreadthFirst("$+$").Take(5)
|
| T[] func(T), T resultSelector(T) |
Enumerable.Return(1).CascadeBreadthFirst("$+$","$*$").Take(5)
|
||
| T[] func(T), T resultSelector(T, int) |
Enumerable.Return(document.body)
.CascadeBreadthFirst("$.childNodes", "v,n=>{value:v,nestLevel:n}")
.Where("$.nestLevel<3 && $.value.nodeType == 1")
.Select("$.nestLevel + ‘:‘ + $.value.tagName")
|
||
| CascadeDepthFirst | Enumerable | T[] func(T) |
Enumerable.Return(1).CascadeDepthFirst("$+$").Take(5)
|
| T[] func(T), T resultSelector(T) |
Enumerable.Return(1).CascadeDepthFirst("$+$","$*$").Take(5)
|
||
| T[] func(T), T resultSelector(T, int) |
Enumerable.Return(document.body)
.CascadeDepthFirst("$.childNodes", "v,n=>{value:v,nestLevel:n}")
.Where("$.nestLevel<3 && $.value.nodeType == 1")
.Select("$.nestLevel + ‘:‘ + $.value.tagName")
|
||
| Flatten | Enumerable | () |
var array = [1,[234,2,[62,3]],[234,5],3]; Enumerable.From(array).Flatten() |
| Pairwise | Enumerable | T selector(T, T) |
Enumerable.Range(1,10)
.Pairwise("prev,next=>prev + ‘:‘ + next")
|
| Scan | Enumerable | T func(T, T) |
Enumerable.Range(1,10).Scan("a,b=>a+b")
|
| T seed, T func(T, T) |
Enumerable.Range(1,10).Scan(100,"a,b=>a+b") |
||
| T seed, T func(T, T), T resultSelector(T) |
Enumerable.Range(1,10).Scan(100,"a,b=>a+b","$*10") |
||
| Select | Enumerable | T selector(T) |
Enumerable.Range(1,10).Select("$*10")
|
| T selector(T, int) |
Enumerable.RangeDown(10,10).Select("value,index=>index + ‘:‘ + value")
|
||
| SelectMany | Enumerable | T[] collectionSelector(T) |
Enumerable.Range(1,3).SelectMany("Enumerable.Repeat($,3)")
|
| T[] collectionSelector(T, int) |
Enumerable.Range(5,5)
.SelectMany("value,index=>Enumerable.Repeat(‘str‘+value,index+1)")
|
||
| T[] collectionSelector(T), resultSelector(T, T) |
Enumerable.Range(1,3)
.SelectMany("Enumerable.Repeat($,3)","first,middle=>first + ‘:‘ + middle*10")
|
||
| T[] collectionSelector(T, int), resultSelector(T, T) |
Enumerable.Range(5,5)
.SelectMany("v,i=>Enumerable.Repeat(‘str‘+v,i+1)","f,m=>f + ‘:‘ + m")
|
||
| Where | Enumerable | bool predicate(T) |
Enumerable.Range(1,10).Where("$%2==0")
|
| bool predicate(T, int) |
Enumerable.Range(1,10).Where("value,index=>value*index>10")
|
||
| OfType | Enumerable | Class type |
Enumerable.From([1,"a",2,"b","c",3]).OfType(Number) Enumerable.From([1,"a",2,"b","c",3]).OfType(String) function ClassA(v){this.v = v}
Enumerable.From([new ClassA("a"),1,2,new ClassA("b")])
.OfType(ClassA).Select("$.v")
|
| Zip | Enumerable | T[] second,T selector(T, T) |
Enumerable.RangeDown(10,10) .Zip(Enumerable.Range(1,10),"outer,inner=>outer + ‘:‘ + inner") |
| T[] second,T selector(T, T, int) |
Enumerable.RangeDown(10,10) .Zip(Enumerable.Range(1,10),"outer,inner,index=>index + ‘:‘ + outer*inner") |
| method name | return type | arguments | example (click code) |
| Join | Enumerable | T[] inner, T outerKeySelector(T), T innerKeySelector(T), T resultSelector(T, T) |
var array1 = [13,413,5,135,61,631,13,61,3]; var array2 = [13,134,53,6,3,7,13,7,7,135,61,3,13]; Enumerable.From(array1) .Join(array2,"","","outer,inner=>outer + ‘:‘ + inner") |
| T[] inner, T outerKeySelector(T), T innerKeySelector(T), T resultSelector(T, T), T compareSelector(T) |
var array1 = [10,405,50,135]; var array2 = [1,4,7,8]; Enumerable.From(array1) .Join(array2,"","","outer,inner=>outer + ‘:‘ + inner","$%2==0") |
||
| GroupJoin | Enumerable | T[] inner, T outerKeySelector(T), T innerKeySelector(T), T resultSelector(T, Enumerable) |
var array1 = [13,413,5,135,61,631,13,61,3]; var array2 = [13,134,53,6,3,7,13,7,7,135,61,3,13]; Enumerable.From(array1) .GroupJoin(array2,"","","outer,lookup=>outer + ‘:‘ + lookup.ToString(‘-‘)") |
| T[] inner, T outerKeySelector(T), T innerKeySelector(T), T resultSelector(T, Enumerable), T compareSelector(T) |
var array1 = [10,405,50,135]; var array2 = [1,4,7,8]; Enumerable.From(array1) .GroupJoin(array2,"","","outer,lookup=>outer + ‘:‘ + lookup.ToString(‘-‘)","$%2==0") |
| method name | return type | arguments | example (click code) |
| All | Boolean | bool predicate(T) |
Enumerable.Range(1,10).All("$<5")
Enumerable.Range(1,10).All("$<15")
|
| Any | Boolean | () |
Enumerable.Range(1,0).Any() Enumerable.Range(1,10).Any() |
| bool predicate(T) |
Enumerable.Range(1,10).Any("$==5")
Enumerable.Range(1,10).Any("$==15")
|
||
| Concat | Enumerable | T[] second |
Enumerable.Range(1,5).Concat(Enumerable.Repeat("foo",5))
|
| Insert | Enumerable | int index, T[] second |
Enumerable.Range(1,5).Insert(3,Enumerable.Repeat("foo",5))
|
| Alternate | Enumerable | T value |
Enumerable.Range(1,5).Alternate(-1) |
| Contains | Boolean | T value |
Enumerable.Range(1,5).Contains(3) Enumerable.Range(1,5).Contains(10) |
| T value, T compareSelector(T) |
Enumerable.Range(1,5).Select("{test:$}").Contains(3)
Enumerable.Range(1,5).Select("{test:$}").Contains(3,"$.test")
|
||
| DefaultIfEmpty | Enumerable | T defaultValue |
Enumerable.Range(1,5).DefaultIfEmpty("default")
Enumerable.Range(1,0).DefaultIfEmpty("default")
|
| Distinct | Enumerable | () |
var array = [1,412,5,3,5,412,7]; Enumerable.From(array).Distinct() |
| T compareSelector(T) |
var seq = Enumerable.Range(1,10).Select("{test:$%3}");
seq.Distinct("$.test").Select("$.test")
|
||
| Except | Enumerable | T[] second |
var array1 = [1,412,5,3,5,412,7]; var array2 = [20,12,5,5,7,310]; Enumerable.From(array1).Except(array2) |
| T[] second, T compareSelector(T) |
var seq1 = Enumerable.Range(1,10).Select("{test:$%5}");
var seq2 = Enumerable.Range(1,10).Select("{test:$%2}");
seq1.Except(seq2,"$.test").Select("$.test")
|
||
| Intersect | Enumerable | T[] second |
var array1 = [1,412,5,3,5,412,7]; var array2 = [20,12,5,5,7,310]; Enumerable.From(array1).Intersect(array2) |
| T[] second, T compareSelector(T) |
var seq1 = Enumerable.Range(1,10).Select("{test:$%5}");
var seq2 = Enumerable.Range(1,10).Select("{test:$%2}");
seq1.Intersect(seq2,"$.test").Select("$.test")
|
||
| SequenceEqual | Boolean | T[] second |
Enumerable.Range(1,5).SequenceEqual(Enumerable.Range(1,5)) Enumerable.Range(1,5).SequenceEqual(Enumerable.Range(1,6)) |
| T[] second, T compareSelector(T) |
Enumerable.Range(1,10).Select("{test:$%5}")
.SequenceEqual(Enumerable.Range(1,10).Select("{test:$%5}"),"$.test")
|
||
| Union | Enumerable | T[] second |
var array1 = [1,412,5,3,5,412,7]; var array2 = [20,12,5,5,7,310]; Enumerable.From(array1).Union(array2) |
| T[] second, T compareSelector(T) |
var seq1 = Enumerable.Range(1,5).Select("{test:$}");
var seq2 = Enumerable.Range(3,7).Select("{test:$}");
seq1.Union(seq2,"$.test").Select("$.test")
|
| method name | return type | arguments | example (click code) |
| OrderBy | OrderedEnumerable | () |
var array = [1,51,61,75,8,35,43]; Enumerable.From(array).OrderBy() |
| T keySelector(T) |
var array = [{a:"a"},{a:"z"},{a:"k"},{a:"l"},{a:"m"},{a:"c"}];
Enumerable.From(array).OrderBy("$.a").Select("$.a")
|
||
| OrderByDescending | OrderedEnumerable | () |
var array = [1,51,61,75,8,35,43]; Enumerable.From(array).OrderByDescending() |
| T keySelector(T) |
var array = [{a:"a"},{a:"z"},{a:"k"},{a:"l"},{a:"m"},{a:"c"}];
Enumerable.From(array).OrderByDescending("$.a").Select("$.a")
|
||
| ThenBy | OrderedEnumerable | T keySelector(T) |
var list = [
{ a: 2, b: 4, c: 1 },
{ a: 2, b: 3, c: 7 },
{ a: 2, b: 3, c: 3 },
{ a: 4, b: 7, c: 5 },
{ a: 7, b: 3, c: 2 },
{ a: 4, b: 1, c: 5 }];
Enumerable.From(list).OrderBy("$.a").ThenBy("$.c").ThenBy("$.b")
.Select("$.a + ‘:‘ + $.b + ‘:‘ + $.c")
|
| ThenByDescending | OrderedEnumerable | T keySelector(T) |
var list = [
{ a: 2, b: 4, c: 1 },
{ a: 2, b: 3, c: 7 },
{ a: 2, b: 3, c: 3 },
{ a: 4, b: 7, c: 5 },
{ a: 7, b: 3, c: 2 },
{ a: 4, b: 1, c: 5 }];
Enumerable.From(list).OrderBy("$.a").ThenByDescending("$.c").ThenByDescending("$.b")
.Select("$.a + ‘:‘ + $.b + ‘:‘ + $.c")
|
| Reverse | Enumerable | () |
Enumerable.Range(1,10).Reverse() |
| Shuffle | Enumerable | () |
Enumerable.Range(1,10).Shuffle() |
| method name | return type | arguments | example (click code) |
| GroupBy | Enumerable<Grouping> | T keySelector(T) |
Enumerable.Range(1,5).GroupBy("$%2==0")
.Select("$.Key() + ‘:‘ + $.ToString(‘-‘)")
|
| T keySelector(T), T elementSelector(T) |
Enumerable.Range(1,5).GroupBy("$%2==0","$*10")
.Select("$.Key() + ‘:‘ + $.ToString(‘-‘)")
|
||
| Enumerable | T keySelector(T), T elementSelector(T), T resultSelector(T, Enumerable) |
Enumerable.Range(1,5)
.GroupBy("$%2==0","","key,e=>key+‘:‘+e.ToString(‘-‘)")
|
|
| TK keySelector(T), TE elementSelector(T), TR resultSelector(T, Enumerable),TC compareSelector(TK) |
Enumerable.From([{d:new Date(2000,1,1),i:0},{d:new Date(2000,1,1),i:1}])
.GroupBy("$.d","","key,e=>key+‘:‘+e.Select(‘$.i‘).ToArray()","$.toString()")
|
||
| PartitionBy | Enumerable<Grouping> | T keySelector(T) |
Enumerable.From([1,2,2,3,3,2,1,1]).PartitionBy("i=>i")
.Select("$.Key() + ‘:‘ + $.ToString(‘-‘)")
|
| T keySelector(T), T elementSelector(T) |
Enumerable.From([1,2,2,3,3,2,1,1]).PartitionBy("i=>i","i=>i*100")
.Select("$.Key() + ‘:‘ + $.ToString(‘-‘)")
|
||
| Enumerable | T keySelector(T), T elementSelector(T), T resultSelector(T, Enumerable) |
Enumerable.From([1,2,2,3,3,2,1,1])
.PartitionBy("i=>i","i=>i","key,e=>key+‘:‘+e.ToString(‘-‘)")
|
|
| TK keySelector(T), TE elementSelector(T), TR resultSelector(T, Enumerable), TC compareSelector(TK) |
Enumerable.From([{d:new Date(2000,1,1),i:0},{d:new Date(2000,1,1),i:1}])
.PartitionBy("$.d","","key,e=>key+‘:‘+e.Select(‘$.i‘).ToArray()","$.toString()")
|
||
| BufferWithCount | Enumerable<Array> | int count |
Enumerable.Range(1,10).BufferWithCount(4) |
| method name | return type | arguments | example (click code) |
| Aggregate | T | T func(T, T) |
Enumerable.Range(1,5).Aggregate("a,b=>a*b")
|
| T seed, T func(T, T) |
Enumerable.Range(1,10).Aggregate(100,"a,b=>a+b") |
||
| T seed, T func(T, T), T resultSelector(T) |
Enumerable.Range(1,10).Aggregate(100,"a,b=>a+b","$*10") |
||
| Average | Number | () |
Enumerable.Range(1,10).Average() |
| Number selector(T) |
Enumerable.From([{a:"foo",b:5},{a:"bar",b:20},{a:"foobar",b:10}])
.Average("$.b")
|
||
| Count | Number | () |
Enumerable.Range(1,10).Count() |
| bool predicate(T) |
Enumerable.Range(1,10).Count("$>7")
|
||
| Max | Number | () |
Enumerable.Range(1,10).Max() |
| Number selector(T) |
Enumerable.From([{a:"foo",b:5},{a:"bar",b:20},{a:"foobar",b:10}])
.Max("$.b")
|
||
| Min | Number | () |
Enumerable.Range(1,10).Min() |
| Number selector(T) |
Enumerable.From([{a:"foo",b:5},{a:"bar",b:20},{a:"foobar",b:10}])
.Min("$.b")
|
||
| MaxBy | T | Number selector(T) |
Enumerable.From([{a:"foo",b:5},{a:"bar",b:20},{a:"foobar",b:10}])
.MaxBy("$.b").a
|
| MinBy | T | Number selector(T) |
Enumerable.From([{a:"foo",b:5},{a:"bar",b:20},{a:"foobar",b:10}])
.MinBy("$.b").a
|
| Sum | Number | () |
Enumerable.Range(1,10).Sum() |
| Number selector(T) |
Enumerable.From([{a:"foo",b:5},{a:"bar",b:20},{a:"foobar",b:10}])
.Sum("$.b")
|
| method name | return type | arguments | example (click code) |
| ElementAt | T | int index |
Enumerable.Range(1,10).ElementAt(3) |
| ElementAtOrDefault | T | int index, T defaultValue |
Enumerable.Range(1,10).ElementAtOrDefault(15,-1) |
| First | T | () |
Enumerable.Range(1,10).First() |
| bool predicate(T) |
Enumerable.Range(1,10).First("$>4")
|
||
| FirstOrDefault | T | T defaultValue |
Enumerable.Empty().FirstOrDefault(-1) |
| T defaultValue, bool predicate(T) |
Enumerable.Range(1,10).FirstOrDefault(-1,"$>15") |
||
| Last | T | () |
Enumerable.Range(1,10).Last() |
| bool predicate(T) |
Enumerable.Range(1,10).Last("$<4")
|
||
| LastOrDefault | T | T defaultValue |
Enumerable.Empty().LastOrDefault(-1) |
| T defaultValue, bool predicate(T) |
Enumerable.Range(1,10).LastOrDefault(-1,"$>15") |
||
| Single | T | () |
Enumerable.From("a").Single()
|
| bool predicate(T) |
Enumerable.Range(1,10).Single("$==4")
|
||
| SingleOrDefault | T | T defaultValue |
Enumerable.Empty().SingleOrDefault(-1) |
| T defaultValue, bool predicate(T) |
Enumerable.Range(1,10).SingleOrDefault(-1,"$==15") |
||
| Skip | Enumerable | int count |
Enumerable.Range(1,10).Skip(5) |
| SkipWhile | Enumerable | bool predicate(T) |
Enumerable.Range(1,10).SkipWhile("$<=5")
|
| bool predicate(T, int index) |
Enumerable.Range(1,10).SkipWhile("value,index=>value+index<=5")
|
||
| Take | Enumerable | int count |
Enumerable.Range(1,10).Take(5) |
| TakeWhile | Enumerable | bool predicate(T) |
Enumerable.Range(1,10).TakeWhile("$<=5")
|
| bool predicate(T, int index) |
Enumerable.Range(1,10).TakeWhile("value,index=>value+index<=5")
|
||
| TakeExceptLast | Enumerable | () |
Enumerable.Range(1,10).TakeExceptLast() |
| Number count |
Enumerable.Range(1,10).TakeExceptLast(3) |
||
| TakeFromLast | Enumerable | Number count |
Enumerable.Range(1,10).TakeFromLast(3) |
| IndexOf | int | T item |
Enumerable.Range(1,10).IndexOf(3) Enumerable.Range(1,10).IndexOf(15) |
| LastIndexOf | int | T item |
Enumerable.From([1,2,3,2,5]).LastIndexOf(2) Enumerable.From([1,2,3,2,5]).LastIndexOf(20) |
| method name | return type | arguments | example (click code) |
| ToArray | Array | () |
Enumerable.Range(1,10).ToArray() |
| ToLookup | Lookup | TKey keySelector(T) |
var lookup = Enumerable.From(["temp.xls", "temp.pdf", "temp.jpg", "temp2.pdf"])
.ToLookup("$.match(/\\.(.+$)/)[1]");
lookup.ToEnumerable().Select("$.Key() + ‘ : ‘ + $.ToArray()")
|
| TKey keySelector(T), TElement elementSelector(T) |
var lookup = Enumerable.From(["temp.xls", "temp.pdf", "temp.jpg", "temp2.pdf"])
.ToLookup("$.match(/\\.(.+$)/)[1]","$.match(/(.+)\\.[^.]+$/)[1]");
lookup.ToEnumerable().Select("$.Key() + ‘ : ‘ + $.ToArray()")
|
||
| TKey keySelector(T), TElement elementSelector(T), TCompare compareSelector(TKey) |
var lookup = Enumerable.From(["temp.xls", "temp.pdf", "temp.jpg", "temp2.pdf"])
.ToLookup("","","$.match(/\\.(.+$)/)[1]");
lookup.ToEnumerable().Select("$.Key() + ‘ : ‘ + $.ToArray()")
|
||
| ToObject | Object | String keySelector(T), T elementSelector(T) |
var obj = Enumerable.Range(1,10).Select("value,index=>{id:‘id_‘ + index,value:value}")
.ToObject("$.id","$.value");
Enumerable.From(obj).Select("$.Key + ‘:‘ + $.Value")
|
| ToDictionary | Dictionary | TKey keySelector(T), TElement elementSelector(T) |
var dict = Enumerable.Range(1,10).Select("value,index=>{id:‘id_‘ + index,value:value}")
.ToDictionary("$.id","$.value");
dict.ToEnumerable().Select("$.Key + ‘:‘ + $.Value")
|
| TKey keySelector(T), TElement elementSelector(T), TCompare compareSelector(TKey) |
var dict = Enumerable.Range(1,10).Select("value,index=>{id:‘id_‘ + index,value:value}")
.ToDictionary("$","$.value","$;id");
dict.ToEnumerable().Select("$.Key.id + ‘:‘ + $.Value")
|
||
| ToJSON | String | () |
// ToJSON only work Native JSON support browser or include json2.js
Enumerable.From([{Foo:1, Bar:‘z‘},{Foo:5, Bar:null}]).ToJSON()
|
| TResult replacer(TKey, TValue) |
Enumerable.From(["a","b","c"])
.ToJSON(function(k,v){return (typeof v === ‘object‘) ? v : v.toString().toUpperCase()})
|
||
| TResult replacer(TKey, TValue), Number space |
Enumerable.Range(1, 5).ToJSON(null, 4) |
||
| ToString | String | () |
Enumerable.Range(0,10).ToString() |
| String separator |
Enumerable.Range(0,10).ToString("-")
|
||
| String separator, T selector(T) |
Enumerable.From([{k:"foo"},{k:"bar"}]).ToString("-","$.k")
|
| method name | return type | arguments | example (click code) |
| Do | Enumerable | void action(T) |
Enumerable.Range(1,10).Do(function(i){
document.write(‘do:‘+ i +‘|‘);})
.Where("$%2==0")
|
| void action(T, index) |
Enumerable.Range(1,10).Do(function(value,index){
document.write("do:" + index + ‘-‘ + value + "<br/>");})
.OrderBy("").Take(2)
|
||
| ForEach | void | void action(T) |
Enumerable.Range(1,10).ForEach(function(i){
document.write(i);})
|
| void action(T, index) |
Enumerable.Range(1,10).ForEach(function(value,index){
document.write(index + ‘:‘ + value + "<br/>");})
|
||
| bool func(T) |
Enumerable.Range(1, 10).ForEach(function(i)
{
if (i % 2 == 0) return; // continue
if (i > 6) return false; // break
document.write(i + "<br/>");
})
|
||
| bool func(T, index) |
Enumerable.Repeat("aaa", 10).ForEach(function(s,index)
{
if (index % 2 == 0) return; // continue
if (index > 6) return false; // break
document.write(index + s + "<br/>");
})
|
||
| Write | void | () |
Enumerable.Range(1,10).Write() |
| String separator |
Enumerable.Range(1,10).Write("-")
|
||
| String separator, T selector(T) |
Enumerable.From([{a:"foo",b:1},{a:"bar",b:3}])
.Write("-","$.a + ‘:‘ + $.b")
|
||
| WriteLine | void | () |
Enumerable.Range(1,10).WriteLine() |
| T selector(T) |
Enumerable.From([{a:"foo",b:1},{a:"bar",b:3}])
.WriteLine("$.a + ‘:‘ + $.b")
|
||
| Force | void | () |
Enumerable.Range(1,10).Trace().Force() |
| method name | return type | arguments | example (click code) |
| Let | Enumerable | Enumerable<TR> func(Enumerable<T>) |
Enumerable.Range(1,10).Let(function(x){return x.Zip(x.Skip(1),"x,y=>x + ‘:‘ + y")})
|
| Share | Enumerable | () |
var share = Enumerable.Range(1,10).Share();
share.Take(4).WriteLine();
document.write("--- <br>");
share.Skip(2)
|
| MemoizeAll | Enumerable | () |
var mem = Enumerable.Range(1,10)
.Do("document.write(‘--->‘ + $ + ‘<br>‘)").MemoizeAll();
mem.Where("$%2==0").WriteLine();
document.write("--- <br>");
mem.Where("$%2==0")
|
| method name | return type | arguments | example (click code) |
| Catch | Enumerable | void handler(Error) |
Enumerable.Range(1,10).Select(function(i){
if(i == 5) throw new Error("enumerable_error"); else return i;})
.Catch("document.write($.message)")
|
| Finally | Enumerable | void finallyAction() |
Enumerable.Range(1,5).Finally(function(){document.write("finally")})
|
| method name | return type | arguments | example (click code) |
| Trace | Enumerable | () |
// Trace is output to console.log Enumerable.Range(1,10).Trace().Force() |
| String message |
Enumerable.Range(1,10).Trace("Gen").Where("$%3==0").Trace("Filtered").Force()
|
||
| String message, T selector(T) |
Enumerable.From([{a:"foo",b:1},{a:"bar",b:3}])
.Trace("Gen","$.a").Force()
|
| method name | return type | arguments | example (click code) |
| GetEnumerator | IEnumerator | () |
Enumerable.Range(1,10).GetEnumerator() |
| MoveNext | Boolean | () |
Enumerable.Range(1,10).GetEnumerator().MoveNext() |
| Current | T | () |
Enumerable.Range(1,10).GetEnumerator().Current() |
| Dispose | void | () |
Enumerable.Range(1,10).GetEnumerator().Dispose() |
| method name | return type | arguments | example (click code) |
| Add | void | TKey key, TValue value |
Enumerable.Empty().ToDictionary().Add(1, ‘aaa‘) |
| Get | TValue | TKey key |
Enumerable.Empty().ToDictionary().Get(1) |
| Set | Boolean | TKey key, TValue value |
Enumerable.Empty().ToDictionary().Set(1, ‘zzz‘) |
| Contains | Boolean | TKey key |
Enumerable.Empty().ToDictionary().Contains(1) |
| Clear | void | () |
Enumerable.Empty().ToDictionary().Clear() |
| Remove | void | TKey key |
Enumerable.Empty().ToDictionary().Remove(1) |
| Count | Number | () |
Enumerable.Empty().ToDictionary().Count() |
| ToEnumerable | Enumerable | () |
var dict = Enumerable.Empty().ToDictionary();
dict.Add("foo", 10); dict.Add("bar", 200);
dict.ToEnumerable().Select("$.Key + ‘:‘ + $.Value")
|
| method name | return type | arguments | example (click code) |
| Get | Enumerable<TElement> | TKey key |
Enumerable.From([{x:1,s:‘a‘},{x:1,s:‘z‘}])
.ToLookup("$.x").Get(1).Select("$.x + ‘:‘ + $.s")
|
| Contains | Boolean | TKey key |
Enumerable.From([{x:1,s:‘a‘},{x:1,s:‘z‘}])
.ToLookup("$.x").Contains(1)
|
| Count | Number | () |
Enumerable.Range(1,5).ToLookup().Count() |
| ToEnumerable | Enumerable<Grouping> | () |
Enumerable.From([{a:1,s:‘foo‘},{a:1,s:‘bar‘},{a:2,s:‘zzzzz‘}])
.ToLookup("$.a").ToEnumerable()
.Select("$.Key() + ‘:‘ + $.Select(‘$.s‘).ToString(‘-‘)")
|
| method name | return type | arguments | example (click code) |
| Key | TKey | () |
Enumerable.From([{id:"foo",x:10},{id:"bar",x:20},{id:"foo",x:100}])
.GroupBy("$.id").ToArray()[0] // grouping
.Key()
|
| All Enumerable Methods | - | - |
var grouping = Enumerable.From([{id:"foo",x:10},{id:"foo",x:25},{id:"foo",x:100}])
.GroupBy("$.id").ToArray()[0];
grouping.Where("$.x % 10 == 0").Select("$.id + ‘:‘ + $.x")
|
| method name | return type | arguments | example (click code) |
| TojQuery | jQuery | () |
// Enumerable.Repeat("foo",10).TojQuery()
|
| toEnumerable | Enumerable<jQuery> | () |
// $("div").toEnumerable()
|
| method name | return type | arguments | example (click code) |
| ToObservable | Rx.Observable | () |
// Enumerable.Range(1,10).ToObservable() |
| ToEnumerable | Enumerable | () |
// Rx.Observable.Range(1,10).ToEnumerable() |
原文:http://www.cnblogs.com/zcm123/p/6016976.html