CodeTip #2 – LinQ for TypeScript

Siema,

dziś bardzo krótki wpis  z serii CodeTip 🙂 Wczoraj na twitterze zobaczyłem taką oto informację:

 

tweet

 

Moja pierwsza myśl to „omg, koleś zrobił pewnie takiego podrabianego lodasha, a teraz podpisuje to jako LinQ”. Mimo tego, lekko zaciekawiony postanowiłem zobaczyć jak to wygląda. Wchodzę na githuba i… zakochałem się! To nie, żadna gra słów, czy nędzna próba imitacji, tylko faktycznie LinQ 🙂 Jeżeli ktoś chciałby się tym pobawić, to biblioteka jest dostępna poprzez npm:

npm install linqts

Dobra, kilka przykładów 😉

 


import {List} from './linq'
 
export class TestObject {
    key: string;
    value: number;
}
 
export class Test {
    TestWhereAndOrderBy() {
        let myNumbers = new List<number>([1, 2, 3, 4, 5, 6, 7, 8, 9]);
        let myFilteredNumbers = myNumbers.Where(n => n > 5).OrderByDescending(n => n).ToArray();
    }
 
    TestFirstAndLast() {
        let myNumbers = new List<number>([1, 2, 3, 4, 5, 6, 7, 8, 9]);
        let myFirstNumber = myNumbers.FirstOrDefault(n => n == 4);
        let myLastNumber = myNumbers.LastOrDefault();
    }
 
    TestSelect() {
        let myTestObjects = new List<TestObject>([
            { key: 'key1', value: 1 },
            { key: 'key2', value: 2 },
        ]);
 
        let myValue = myTestObjects.Select(o => o.value).First();
    }
 
    TestAddAndContains() {
        let myNumbers = new List<number>();
 
        myNumbers.Add(1);
        myNumbers.Add(3);
        myNumbers.AddRange([2, 4, 5, 6]);
 
        if (myNumbers.Contains(3))
            alert('myNumbers contains 3')
 
    }
}    

 

Nie wiem jak Wy, ale ja osobiście jestem oczarowany i na pewno ta biblioteka zagości w moim stacku. Co prawda nie ma ona tylu opcji co wcześniej wspomniany loadash, ale według mnie będzie to dobre rozwiązanie dla każdego full stacka piszącego w .NET 😉 Link do tej biblioteki macie tu. Dziwnie pisze mi się takie małe wpisy, ale nauka LinQ mijałaby się tu z celem. Przypominam, że wkrótce druga część wpisu o logowaniu w Aurorze, no i wpadajcie na mojego twittera, żeby nic Was nie ominęło!

CYA

PS. Tak naprawdę piszę z Pendolino i bałem się, że przy dłuższym wpisie się porzygam ><

You may also like...