Javascript 将对象或定位参数传递给函数

Javascript 将对象或定位参数传递给函数,javascript,ecmascript-6,Javascript,Ecmascript 6,现在可以对函数参数进行如下分解: function add({a, b}) { return a + b; } 可以这样称呼: add({a: 5, b: 9}); 也可以将其与位置参数结合起来,这样也可以在不命名参数的情况下调用它。例如: add(5, 9); 您可以使用,并根据其长度对其进行分解 函数添加(…参数){ 让a,b; args.length==1?({a,b}=args[0]):[a,b]=args; 返回a+b; }; log(添加({a:5,b:9})); 控制台日志

现在可以对函数参数进行如下分解:

function add({a, b}) { return a + b; }
可以这样称呼:

add({a: 5, b: 9});
也可以将其与位置参数结合起来,这样也可以在不命名参数的情况下调用它。例如:

add(5, 9);
您可以使用,并根据其长度对其进行分解

函数添加(…参数){
让a,b;
args.length==1?({a,b}=args[0]):[a,b]=args;
返回a+b;
};
log(添加({a:5,b:9}));
控制台日志(添加(5,9))您可以使用,并根据其长度对其进行分解

函数添加(…参数){
让a,b;
args.length==1?({a,b}=args[0]):[a,b]=args;
返回a+b;
};
log(添加({a:5,b:9}));

控制台日志(添加(5,9))您的and或Ori Drori的答案解决了问题吗?当函数需要单个对象参数或多个参数时,模式的目的是什么?and或Ori-Drori的答案解决了这个问题吗?如果一个函数需要一个对象参数或多个参数,那么该模式的用途是什么?这只适用于具有多个参数的函数吗?您可以根据参数的长度更改解构方法,使其适合您的需要。但是,正如@estus在已删除的答案中所述,“多个函数签名具有误导性,并且在没有充分理由的情况下需要对提供的参数进行过多的协商”。这是否只适用于包含多个参数的函数?您可以根据参数的长度更改解构方法,使其适合您的需要。然而,正如@estus在删除的答案中所述,“多功能签名具有误导性,并且在没有充分理由的情况下需要对提供的参数进行过多的协商”。