这两个函数怎么重构成一个函数, 有没有必要?function vote(pollForm,option,pollId,objectId)
{
var action = "/ajaxVote.jspa";
var pars ="pollId="+pollId+"&option="+option+"&objectId="+objectId;
var myAjax = new Ajax.Request(action,{method: 'post', parameters: pars, onComplete: updatePage} );
} function vote(pollForm,option,pollId,objectId,type)
{
var action = "/ajaxVote.jspa";
var pars ="pollId="+pollId+"&option="+option+"&objectId="+objectId + "&type="+type;
var myAjax = new Ajax.Request(action,{method: 'post', parameters: pars, onComplete: updatePage} );
}
{
var action = "/ajaxVote.jspa";
var pars ="pollId="+pollId+"&option="+option+"&objectId="+objectId;
var myAjax = new Ajax.Request(action,{method: 'post', parameters: pars, onComplete: updatePage} );
} function vote(pollForm,option,pollId,objectId,type)
{
var action = "/ajaxVote.jspa";
var pars ="pollId="+pollId+"&option="+option+"&objectId="+objectId + "&type="+type;
var myAjax = new Ajax.Request(action,{method: 'post', parameters: pars, onComplete: updatePage} );
}
{
var action = "/ajaxVote.jspa";
var pars ="pollId="+pollId+"&option="+option+"&objectId="+objectId;
if(arguments.length==5) pars += "&type="+type;
var myAjax = new Ajax.Request(action,{method: 'post', parameters: pars, onComplete: updatePage} );
}
要不到时候再多出一个参数,你又得写多一个函数 ?
参考
<script type='text/javascript'>
var vote = function(pars){
if(!pars || typeof pars != 'object') return;
else{
var p = [];
for(var i in pars){
p.push(i+'='+pars[i])
}
}
alert(p.join("&"));
}
//调用时多了什么参数,加到对象参数中就好了
func({
pollId:'1',
option:'2',
objectId:'3'
})
</script>
pollId:'1',
option:'2',
objectId:'3'
})
function vote(pollForm,option,pollId,objectId,type)
{
var action = "/ajaxVote.jspa";
var pars ="pollId="+pollId+"&option="+option+"&objectId="+objectId;
if(type)pars += "&type="+type;
var myAjax = new Ajax.Request(action,{method: 'post', parameters: pars, onComplete: updatePage} );
}