修改 谢谢@ eth3lbert 它仍然需要写24个itterations ... 这是我最近的尝试......
var animalsMarkedAt = "animalMarkedAt"
var queryMarkedPerHour = new Parse.Query("locationDeets");
y = 0
for ( var i = 0; i < 24; i++ ) {
queryMarkedPerHour.equalTo("dayMonthYear", dayNowMonthNowYearNowInspectorSelected) && queryMarkedPerHour.equalTo("hourAnimalMarked", i);
queryMarkedPerHour.count({
success: function(j){
y=y+1
console.log(animalsMarkedAt + y + "oclock " + j);
}
})
}
输出: animalsMarkedAt1oclock 1 animalsMarkedAt2oclock 5 animalsMarkedAt3oclock 2 等等(凌晨1点1号动物被标记,凌晨2点标记5只动物,在凌晨3点标记2只动物) 我现在需要做的是将计数分配给相关名称作为变量,例如animalsMarkedAt1oclock should = 1 我无法确定如何分配它。感觉很亲密。 干杯 丹
原始问题: 我正在使用Parse.com Javascript SDK,需要将以下内容转换为循环。目前有24个。每小时一个。 我希望有人可以帮助我的代码严重膨胀。
var queryMarkedPerHour = new Parse.Query("locationDeets");
queryMarkedPerHour.equalTo("dayMonthYear", dayNowMonthNowYearNowInspectorSelected) && queryMarkedPerHour.equalTo("hourAnimalMarked", 7);
queryMarkedPerHour.count({
success: function(sevenMarked){
queryMarkedPerHour.equalTo("dayMonthYear", dayNowMonthNowYearNowInspectorSelected) && queryMarkedPerHour.equalTo("hourAnimalMarked", 8);
queryMarkedPerHour.count({
success: function(eightMarked){
queryMarkedPerHour.equalTo("dayMonthYear", dayNowMonthNowYearNowInspectorSelected) && queryMarkedPerHour.equalTo("hourAnimalMarked", 9);
queryMarkedPerHour.count({
success: function(nineMarked){
//Do the Stuff
}
})
}
})
}
})
答案 0 :(得分:0)
您可以尝试Promises
让您的代码更清晰。
var queryMarkedPerHour = new Parse.Query("locationDeets");
queryMarkedPerHour.equalTo("dayMonthYear", dayNowMonthNowYearNowInspectorSelected);
queryMarkedPerHour.equalTo("hourAnimalMarked", 7);
return queryMarkedPerHour.count()
.then(function (sevenMarked) {
queryMarkedPerHour.equalTo("dayMonthYear", dayNowMonthNowYearNowInspectorSelected);
queryMarkedPerHour.equalTo("hourAnimalMarked", 8);
return queryMarkedPerHour.count();
})
.then(function (eightMarked) {
queryMarkedPerHour.equalTo("dayMonthYear", dayNowMonthNowYearNowInspectorSelected);
queryMarkedPerHour.equalTo("hourAnimalMarked", 9);
return queryMarkedPerHour.count();
});// if need just keep chaining
REF。 Promises