我希望JavaScript函数具有我设置为默认值的可选参数,如果没有定义值,则使用这些参数(如果传递了值,则忽略这些参数).在Ruby中,您可以这样做:
def read_file(file, delete_after = false)
# code
end
这在JavaScript中有效吗?
function read_file(file, delete_after = false) {
// Code
}
我希望JavaScript函数具有我设置为默认值的可选参数,如果没有定义值,则使用这些参数(如果传递了值,则忽略这些参数).在Ruby中,您可以这样做:
def read_file(file, delete_after = false)
# code
end
这在JavaScript中有效吗?
function read_file(file, delete_after = false) {
// Code
}
从ES6/ES2015开始,默认参数在语言规范中.
function read_file(file, delete_after = false) {
// Code
}
很管用.
如果传递no value或undefined,默认函数参数允许使用默认值初始化形式参数.
您还可以:
// the `= {}` below lets you call the function without any parameters
function myFor({ start = 5, end = 1, step = -1 } = {}) { // (A)
// Use the variables `start`, `end` and `step` here
···
}
Pre ES2015,
有很多方法,但这是我首选的方法-它允许您传递任何您想要的东西,包括false或null.(typeof null == "object"
)
function foo(a, b) {
a = typeof a !== 'undefined' ? a : 42;
b = typeof b !== 'undefined' ? b : 'default_b';
...
}