我正在使用 web sql 作为数据库创建移动应用程序。我正在尝试从一个函数返回数组,如下所示
getCheckedItems:function(type,itemId){
var optArr=[];
var sql ="select optionid as opt from MyTable where familymemberid=" + this.memberId+ " and questionid="+itemId
MyDb.runQuery(sql, function(optionrecords) {
if(optionrecords.length>0)
{
if(type==2)
{
var optionId=optionrecords[0].opt;
optArr.push(optionId);
alert(optArr);
// alert(optionId+"Hello");
}
else
{
for(var i=0;i<optionrecords.length;i++)
{
optArr.push(optionrecords[i].opt);
}
}
}
});
alert(optArr);
return optArr;
}
但是这里的第二个警报,即optArr
在事务中的警报之前显示。如何在返回数组之前完成等待数据库事务。