我正在尝试承诺每个人都非常兴奋。他们应该降低代码复杂性,这是我尚未观察到的功能。
就我而言,我有一个返回Promise的函数。该功能通过ADB在Android设备上调用键上或下事件。我称之为:
press(B_KEY, 3000, client, device)
.then(function(result) {console.log("Key press done.");});
我想按顺序多次执行此操作(调用press
)函数。我可以手动完成:
press(B_KEY, 3000, client, device)
.then(function(result) {return press(B_KEY, 3000, client, device);})
.then(function(result) {return press(B_KEY, 3000, client, device);})
.then(function(result) {return press(B_KEY, 3000, client, device);})
// ad nauseam
我希望有for
循环之类的东西。我试着想到伪代码给你看,但我的任何想法都很难看。
如何使用Promises中的所有功能进行循环?
答案 0 :(得分:1)
要实现您的目标,您可以使用mapSeries()在空数组上迭代n次:
return Promise.mapSeries(new Array(4), function() {
return press(B_KEY, 3000, client, device);
});
有关mapSeries()的更多信息,请参阅reference