Использовать SQL для запроса объектов JavaScript? - PullRequest
7 голосов
/ 16 марта 2011

Есть ли способ выполнить SQL-запрос к объектам javascript, чтобы найти в них данные?В частности, я ищу способ запросить несколько объектов (каждый из которых представляет собой таблицу данных) и выполнить объединение для них.

Я подумал, что это был длинный путь, но, тем не менее, стоит спросить.

Ответы [ 5 ]

3 голосов
/ 16 марта 2011

Попробуйте JSLinq

Смотрите этот пример с сайта:

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; });
2 голосов
/ 19 мая 2015

Вы можете использовать async-linq, которые поддерживают синхронные и асинхронные операции LINQ в JavaScript и поддерживают функцию наравне с версией C #. Вы можете получить его по npm install async-linq.

Синхронизация

linq([1, 2, 3, 4, 5, 6, 7, 8, 9, 0])
    .where(function (v) { return v % 2 === 1; })
    .select(function (v) { return v * 100; })
    .run();

Асинхронная операция

linq(['abc.txt', 'def.txt', 'xyz.txt'])
    .async
    .select(function (filename, index, callback) {
        fs.stat(filename, function (err, stat) {
            callback(err, err ? null : {
                filename: filename,
                size: stat.size
            });
        });
    })
    .run(function (err, result) {
        console.log(result);
    });
2 голосов
/ 16 марта 2011

SQLike также хорош для эмуляции синтаксиса SQL или linq:

http://code.google.com/p/sqlike/

2 голосов
/ 16 марта 2011

Никогда не использовал его раньше, но быстрый поиск в Google дает LINQ to Javascript . Хотя это и не синтаксис SQL, он позволяет вам делать вещи, похожие на SQL, на объекты Javascript, или так оно и есть. Вы также можете проверить этот вопрос о LINQ и Javascript

1 голос
/ 10 апреля 2012

Есть TrimQuery - некоторое время не обновлялся, но он твердый. http://code.google.com/p/trimpath/wiki/TrimQuery

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...