Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:有没有办法为Parse.Promise.when指定无限输入参数?_Javascript_Parse Platform_Promise_.when - Fatal编程技术网

Javascript:有没有办法为Parse.Promise.when指定无限输入参数?

Javascript:有没有办法为Parse.Promise.when指定无限输入参数?,javascript,parse-platform,promise,.when,Javascript,Parse Platform,Promise,.when,查看Parse.Promise.when()的文档,目前有两种指定方法。第一个是“when”的逗号分隔输入参数,然后是“then”中函数的逗号分隔输入 第二个是“when”的数组输入,后面是“then”中函数的逗号分隔输入 我的问题是:对于“then”中的函数,是否有一种简单的方法可以指定无限量的输入,而不必实际输入无限量?换言之,有没有一种方法可以用一种简单的方式重现这一点 var promises = [p1, p2, p3]; Parse.Promise.when(promis

查看Parse.Promise.when()的文档,目前有两种指定方法。第一个是“when”的逗号分隔输入参数,然后是“then”中函数的逗号分隔输入

第二个是“when”的数组输入,后面是“then”中函数的逗号分隔输入

我的问题是:对于“then”中的函数,是否有一种简单的方法可以指定无限量的输入,而不必实际输入无限量?换言之,有没有一种方法可以用一种简单的方式重现这一点

var promises = [p1, p2, p3];
      Parse.Promise.when(promises).then(function(r1, r2, r3,.............∞) {
        console.log(r1);  // prints 1
        console.log(r2);  // prints 2
        console.log(r3);  // prints 3
        .
        .
        .
        .
        .
        ∞
      }); 
我尝试使用“arguments”变量,但在本例中它不起作用。似乎我必须一个接一个地输入参数r1,r2,r3。。。∞. 有人知道怎么解决这个问题吗?请帮忙

没有,但会有

ECMAScript 6允许您执行此操作的功能:

Parse.Promise.when(promises).then(function(r1, r2, r3, ....rest) {
     console.log(r1); // prints 1
     console.log(rest); // an array with the rest of the parameters.
});
在EcmaScript 5中,需要使用
参数

Parse.Promise.when(promises).then(function() {
     console.log(arguments[0]); // prints 1
     // prints 2 in the first iteration all the way to the last one
     for(var i = 1; i < arguments.length; i++){
         console.log(arguments[i]); 
     });
});
Parse.Promise.when(promises).then(function(){
console.log(参数[0]);//打印1
//在第一次迭代中打印2,一直打印到最后一次
for(var i=1;i
您可以向我们展示您尝试使用
参数的代码吗?我很确定这应该奏效。谢谢你!我的错误是在匿名函数中插入参数的“参数”。谢谢大家!@用户3145336很高兴我能帮助您解决您的问题。公平地说,
参数在JS中确实有问题。
Parse.Promise.when(promises).then(function(r1, r2, r3, ....rest) {
     console.log(r1); // prints 1
     console.log(rest); // an array with the rest of the parameters.
});
Parse.Promise.when(promises).then(function() {
     console.log(arguments[0]); // prints 1
     // prints 2 in the first iteration all the way to the last one
     for(var i = 1; i < arguments.length; i++){
         console.log(arguments[i]); 
     });
});