ES6中的多参数函数

请问ES6中函数接受多参数时,有没有简便的写法呢?
目前我的test函数都是接受params 内部在解出来

var params = {
    par1:"1111",
    par2:"2222",
    par3:"3333",
}

function test(params){
    var par1 = params.par1;
    var par2 = params.par2;
    var par3 = params.pa3;
}

test(params);

能够处理像是下面这种形式的传参吗?

var params = {
    par1:"1111",
    par2:"2222",
    par3:"3333",
}

function test(par1,par2,par3){
    //
}

test(...params);

但这个params只能是array呢
有没有更简便的写法呢?

阅读 7.7k
4 个回答
var params = {
    par1:"1111",
    par2:"2222",
    par3:"3333",
}

function test({
    par1 = false, 
    par2 = false, 
    par3 = false,
    par4 = false
}){

    console.log(par1, par2, par3, par4);
}

test(params);

你是要这个吧

var params = {
    par1:"1111",
    par2:"2222",
    par3:"3333",
}

function test(params){
    let {par1,par2,par3} = params;
}

test(params);

这样?

要么利用解构赋值法赋值,要不就把params的解构变成类数组结构。因为你要使用...params这种rest参数,就已经默认参数是数组了,何必再传对象呢?不如直接用对象做参数。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题