Javascript:可选参数在函数中
这个问题在这里已经有了答案:
任何未填充的参数将undefined
。
concatenate(a, c)
等价于concatenate(a, b)
。 你不能通过第三个参数而不通过第二个参数; 但你可以undefined
传递undefined
(或null
,我想): concatenate(a, undefined, c)
。
在函数中,您可以检查undefined
并用默认值替换。
或者,您可以使用对象参数来模仿关键字参数: concatenate({a: a, c: c})
。
只需使用arguments
数组对象:
function concatenate() {
var result = '';
for (var i = 0; i < arguments.length; i++) {
result += arguments[i];
}
return result;
}
使用ES6 rest parameters
语法来获取rest parameters
数组。 然后简单地join
它的项目来检索连接的字符串。
concatenate(a);
concatenate(a, b);
concatenate(a, c);
function concatenate(...args){
// for old browsers
// `...args` is an equivalent of `[].slice.call(arguments);`
return args.join('');
}
链接地址: http://www.djcxy.com/p/17275.html
上一篇: Javascript : optional parameters in function
下一篇: How can I declare optional function parameters in Javascript?