跳过函数参数javascript
例如,我有这个函数跳过函数参数javascript,javascript,Javascript,例如,我有这个函数 function example(a=1,b=1,c=1,d=1,f=1) { return (a*b*c*d*f) } 所以我有一个带参数的简单函数,它有默认值。 现在,当我调用函数时,如果我想将a乘以f。我需要这样做: example(3,1,1,1,5) 为什么我不能简单地写出第一个和最后一个论点?这可能吗,比如: example(3[1],5[5]) 其中数字[1]和[5]确定参数的索引 为什么我不能简单地写出第一个和最后一个论点 因为这不是JavaScrip
function example(a=1,b=1,c=1,d=1,f=1) {
return (a*b*c*d*f)
}
所以我有一个带参数的简单函数,它有默认值。
现在,当我调用函数时,如果我想将a乘以f
。我需要这样做:
example(3,1,1,1,5)
为什么我不能简单地写出第一个和最后一个论点?这可能吗,比如:
example(3[1],5[5])
其中数字[1]
和[5]
确定参数的索引
为什么我不能简单地写出第一个和最后一个论点
因为这不是JavaScript规范中定义函数调用的方式。这是唯一的原因
我建议在不确定要传递给函数的参数数量时传递一个对象
如果我是你的话,我会在ES5和更早的版本中写如下:
函数示例(参数){
var默认值=1
var a=params.hasOwnProperty('a')?params.a:默认值;
var b=params.hasOwnProperty('b')?params.b:默认值;
var c=params.hasOwnProperty('c')?params.c:默认值;
var d=params.hasOwnProperty('d')?params.d:默认值;
var e=params.hasOwnProperty('e')?params.e:默认值;
报税表(a*b*c*d*e);
}
log(例如({a:3,b:5}))
为什么要使用这么多下划线?其中数字[1]和[5]决定参数的索引?
因为您使用的是javascript,而不是您为满足当前需要而编写的某种语言