Skip to content

Latest commit

 

History

History
82 lines (49 loc) · 3.05 KB

README.md

File metadata and controls

82 lines (49 loc) · 3.05 KB

LINQ to JavaScript

LINQ to JavaScript (JSLINQ) is LINQ to Objects for JavaScript arrays, and adds power and flexibility of LINQ style queries to traditional JavaScript code.

FYI, this project was migrated here from Codeplex before it shutdown.

What is LINQ to JavaScript?

LINQ to JavaScript (JSLINQ for short) is an implementation of LINQ to Objects implemented in JavaScript. It is built using a set of extension methods built on top of the JavaScript Array object. If you are using Arrays then you can use JSLINQ; it's that simple!

Nuget Package

http://nuget.org/packages/jslinq

Example Usage

If you don't know what LINQ is; it's a new featureset in the .NET Framework 3.5 that allows more SQL-like querying of any kind of data. In the case of LINQ to JavaScript, it provides the ability to query against Arrays.

var myList = [
    {FirstName:"Chris",LastName:"Pearson"},
    {FirstName:"Kate",LastName:"Johnson"},
    {FirstName:"Josh",LastName:"Sutherland"},
    {FirstName:"John",LastName:"Ronald"},
    {FirstName:"Steve",LastName:"Pinkerton"}
];
        
var exampleArray = JSLINQ(myList)
   .Where(function(item){ return item.FirstName == "Chris"; })
   .OrderBy(function(item) { return item.FirstName; })
   .Select(function(item){ return item.FirstName; });

Using LINQ to JavaScript

We will use this Array for the following examples:

var myList = [
    {FirstName:"Chris",LastName:"Pearson"},
    {FirstName:"Kate",LastName:"Johnson"},
    {FirstName:"Josh",LastName:"Sutherland"},
    {FirstName:"John",LastName:"Ronald"},
    {FirstName:"Steve",LastName:"Pinkerton"}
];

Create an Instance of the JSLINQ object with your data

You need to create a new JSLINQ object and pass it the javascript array of data that you will be querying.

var example = JSLINQ(myList);

Using the Where operator to specify query criteria

In this case, we're getting all items in the Array that have FirstName property set to Chris.

var whereExample1 = JSLINQ(myList).
      Where(function(item){ return item.FirstName == "Chris"; });

Using the Select operator to specify which data to return

In this case, we're going to return only the FirstName property of each item in the Array.

var selectTest2 = JSLINQ(myList).
    Select(function(item){ return item.FirstName; });

Using the OrderBy operator to determine how to sort the order of the items in the Array

In this case, we're going to order them by the FirstName property.

var sortTest1 = JSLINQ(myList)
     .OrderBy(function(item){ return item.FirstName; });

News

JSLinq Editor

2010/03/16: LINQ for JavaScript: Using and Extending JSLINQ

2008/01/24: LINQ to JavaScript (JSLINQ) Open Source Project Launched!