了解如何在JavaScript函数中添加默认参数值
默认参数值已于2015年引入ES6,并在现代浏览器中广泛实施。
这是一个doSomething 函数,它接受param1 。
const doSomething = (param1) => {
}
如果函数被调用时没有指定参数,我们可以为param1 添加一个默认值。
const doSomething = (param1 = 'test') => {
}
当然,这对更多的参数也是适用的。
const doSomething = (param1 = 'test', param2 = 'test2') => {
}
如果你有一个独特的对象,里面有参数值,怎么办?
很久以前,如果我们必须向一个函数传递一个选项对象,为了在其中一个选项没有被定义的情况下获得这些选项的默认值,你必须在函数中添加一点代码。
const colorize = (options) => {
if (!options) {
options = {}
}
const color = ('color' in options) ? options.color : 'yellow'
...
}
通过重构,你可以提供默认值,这就大大简化了代码。
const colorize = ({ color = 'yellow' }) => {
...
}
如果在调用我们的colorize 函数时没有传递任何对象,同样我们可以默认分配一个空对象。
const spin = ({ color = 'yellow' } = {}) => {
...
}