A LINQ-like library for JavaScript is JSLINQ. It seems to have quite a full implementation.
Example from site:
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; });
This should be fine for JSON - as JSON is basically just objects. The DOM, while workable, might be a bit more clunky; you'd probably be best using something else.