如何提高效率,想象一下您不知道自己需要多少参数的方法。
例如一个简单的ajax插入,但你不知道有多少输入有html ... 那么你需要发送例如4就像这样:
function insert_these(data1, data2, data3, data4){
$.post( 'test.php', { dat1: data1, dat2: data2, dat3: data3, dat4: data4 );
};
但是,如果你想要超过4个输入?
如何使用参数作为数组创建函数,如下所示:
inputs = new array();
function insert_these(inputs){
//then the rest of code
$.post( 'test.php', for (var i = 0; i < inputs.lenght; i++){
dat+i: inputs+i, }; );
};
答案 0 :(得分:2)
这称为variadic function,并且很容易在JavaScript中构建:您的函数中已经存在arguments
伪数组。
只需像对数组一样迭代它并构建对象:
function insert_these(){
var obj = {};
for (var i=0; i<arguments.length; i++) obj['dat'+(i+1)] = arguments[i];
$.post('test.php', obj);
}
答案 1 :(得分:2)
您可以简单地使用如下对象:
var params = {
data1: 'data1',
data2: 'data2'
}
insert(params);
function insert(parameters) {
// other stuff here
$.post('test.php', parameters);
// other stuff here
}