1

我有根据 3 个输入参数创建 Json 请求的方法:

function jsonRequest(_action, _data1, _data2){
  var jsonData = JSON.stringify({
        data:{
            action: _action
           ,data1: _data1
           ,data2: _data2   
        }
    });
 return jsonData;
}

如果我想输入未知数量的参数怎么办,比如说 4。

那么我的功能应该怎么照顾呢?

就像是:

jsonRequest("103","blabla","bobob", ....);

它必须是通用的以处理任何数量的参数。

在我的示例中,我没有使用 angularjs,但欢迎您。

请帮忙,

谢谢,

4

1 回答 1

1

函数有一个隐藏的类似数组的变量arguments,它包含在调用期间传递给该函数的所有内容。这将类似于:

function jsonRequest(){
  var _action = arguments[0];
  var _data1 = arguments[1];
  var _data2 = arguments[2];

  //the rest of the code here

}

您可以遍历参数,并将所需的数据附加到对象。您可以将第一次迭代设置为 append _action,其余的设置为 append _dataN,其中N是索引。

arguments只包含值,没有名称。我建议您改为将对象传递给您的函数。

function jsonRequest(data){
  return JSON.stringify({data : data});
}

jsonRequest({
  action : ...,
  data1 : ...,
  data2 : ...
});
于 2013-05-11T07:08:56.810 回答