Javascript 如何在parse.com的异步方法中使用for循环
我想在for循环中调用parse.com的函数,但当我将函数放入for循环时,for循环就完成了,没有函数的响应Javascript 如何在parse.com的异步方法中使用for循环,javascript,parse-platform,Javascript,Parse Platform,我想在for循环中调用parse.com的函数,但当我将函数放入for循环时,for循环就完成了,没有函数的响应 for (var i = 0; i <tourPackage.length; i++) { var Apackage = tourPackage[i].attributes; tourPackageDest.set("package_id",tourPackage[i].id); tourPackageDest.set("it
for (var i = 0; i <tourPackage.length; i++) {
var Apackage = tourPackage[i].attributes;
tourPackageDest.set("package_id",tourPackage[i].id);
tourPackageDest.set("itinerary",Apackage.holiday_short_detail);
var SD = Apackage.destination.split(',');
for(var k=0; k<SD.length;k++){
var destPlace = Parse.Object.extend("Cities_World");//DestinationMaster
var query = new Parse.Query(destPlace);
query.equalTo("place_name", SD[k]);
query.find().then(function(results){
console.log(results);
});
tourPackageDest.save(null,{
success: function(Tpackage){
console.log("Successfully saved in PackageItineraryMaster");
}
});
}
}
for(var i=0;i您正在调用的许多方法(例如.find(),.save())都是异步的。从外观上看,您在编写代码时就好像它们是同步方法一样。下面是一个示例(),说明了如何构造代码来解释这种异步性:
var query = new Parse.Query("Comments");
query.equalTo("post", 123);
query.find().then(function(results) {
// Collect one promise for each delete into an array.
var promises = [];
_.each(results, function(result) {
// Start this delete immediately and add its promise to the list.
promises.push(result.destroy());
});
// Return a new promise that is resolved when all of the deletes are finished.
return Parse.Promise.when(promises);
}).then(function() {
// Every comment was deleted.
});
基本上,您希望将异步函数中的每个承诺添加到一个数组中,并创建一个新的承诺,当所有这些承诺都得到解决时,该承诺将得到解决。您正在调用的许多方法(例如.find(),.save())是异步的。从外观上看,您在编写代码时就好像它们是同步方法一样。下面是一个示例(),介绍了如何构造代码以说明这种异步性:
var query = new Parse.Query("Comments");
query.equalTo("post", 123);
query.find().then(function(results) {
// Collect one promise for each delete into an array.
var promises = [];
_.each(results, function(result) {
// Start this delete immediately and add its promise to the list.
promises.push(result.destroy());
});
// Return a new promise that is resolved when all of the deletes are finished.
return Parse.Promise.when(promises);
}).then(function() {
// Every comment was deleted.
});
基本上,您希望将异步函数中的每个承诺添加到一个数组中,并创建一个新的承诺,当所有这些承诺都得到解决时,该承诺将得到解决。谢谢谢谢谢谢谢谢,我只是parse.com中的新手,所以需要时间来解决问题。但您让我的问题变得更简单了。再次感谢谢谢谢谢谢谢谢谢,我是只是parse.com上的新手,所以需要时间来解决问题。但是你让我更简单了。再次感谢