我正在使用解析并尝试制作云代码查询来处理此问题:
我想查询一个表然后迭代所有结果并检查column1>列2。我不确定是否有办法使用查询约束,所以我在结果上进行for循环。
但是我的问题是当我在iOS应用中返回goodRides时出现此错误:
"JSON text did not start with array or object and option to allow fragments not set."
如果我返回结果而不迭代并解析我想要哪些工作正常,那么我不确定我在循环迭代中做错了什么。
这是我的代码:
q.find()
.then(results => {
var goodRides;
for(var i = 0; i < results.length; i++)
{
if(results[i].get("availableSeats") > results[i].get("occupiedSeats")){
goodRides.push(results[i]);
}
}
return goodRides;
})
.then(rides => {
res.success(rides);
})
.catch(function (err){
res.log.error("Error");
});
我的问题是当我尝试推送(结果[i]到goodRides变量时,所有内容都会中断。如何迭代结果并仅提取我想要的索引?
答案 0 :(得分:1)
以下是我写这个的方法:
q.find()
.then(results => Promise.resolve(
results.filter((result) => result.get('availableSeats') > result.get('occupiedSeats'))
))
.then(rides => res.success(rides))
.catch(err => res.error(err))
答案 1 :(得分:0)
goodRides
初始化为数组才能推送到它......
var goodRides = [];