有没有一种方法可以对JavaScript对象运行SQL查询以查找其中的数据?具体来说,我正在寻找一种在几个对象上进行查询(每个对象表示数据表)并在它们之间执行连接的方法。
我想这可能性不大,但还是值得问一下。
有没有一种方法可以对JavaScript对象运行SQL查询以查找其中的数据?具体来说,我正在寻找一种在几个对象上进行查询(每个对象表示数据表)并在它们之间执行连接的方法。
我想这可能性不大,但还是值得问一下。
尝试使用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; });
我以前从未使用过它,但在Google上快速搜索可以得到 LINQ to Javascript。虽然它不是SQL语法,但它似乎允许您在Javascript对象上执行类似于SQL的操作。您还可以查看有关LINQ和Javascript的这个问题
async-linq
,它支持JavaScript中的同步和异步LINQ操作,并具有与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);
});