我希望JavaScript函数有可选的参数,我对这些参数设置了默认值,如果没有定义值,就会使用这些参数(如果传递了值,则忽略这些参数)。在Ruby中,你可以这样做:
def read_file(file, delete_after = false)
# code
end
这在JavaScript中可以工作吗?
function read_file(file, delete_after = false) {
// Code
}
发布于 2009-05-21 20:18:46
就我个人而言,我发现像这样简单的东西要简洁得多,也更具可读性。
function pick(arg, def) {
return (typeof arg == 'undefined' ? def : arg);
}
function myFunc(x) {
x = pick(x, 'my default');
}
发布于 2015-05-29 23:25:28
在ECMAScript 6中,你实际上可以写出你所拥有的东西:
function read_file(file, delete_after = false) {
// Code
}
这会将delete_after
设置为false
(如果不存在)或undefined
。您现在可以在Babel这样的转译器中使用像这样的ES6特性。
发布于 2015-11-16 19:29:35
该解决方案适用于js:
function read_file(file, delete_after) {
delete_after = delete_after || false;
// Code
}
https://stackoverflow.com/questions/894860
复制相似问题