Vanilla 中的可选参数-javascript

Optional paramters in Vanilla-javascript

我不知道在某些情况下如何使函数参数成为可选参数。 情况是,如果我有不止一个参数,而不是最后一个应该是可选的。我看到 ejs 模板引擎解决了这个问题:

ejs.renderFile(templatesPath, options, (err, html) => {
    if (err) {
         console.log(err);   
         error = err;
    } else {
         res.write(html);
         res.end();
    }
})

所以如果我不传递选项参数,回调函数仍将被识别为回调函数而不是选项对象 - 分配给它的角色仍然是回调函数而不是角色遗漏的参数 - 正常情况下。

那么如何解决 - 在 Javascript 中 - 我仍然定义了 2-3 个或更多参数(在函数定义中),但如果我不传递可选参数 - 这不是最后一个 -它不会更改传递的参数角色。

谢谢

重要的是参数的顺序。所以,你们一定要尊重。

如果函数不支持无值,只需传递undefinednull或空对象{}

下面,options 已声明但未赋值 (undefined)。订单受到尊重,它将起作用。

你可以保持这种方式:始终声明变量以将它们传递给函数,并且仅在拥有时才为其赋值。

var options; 
ejs.renderFile(templatesPath, options, (err, html) => {
    if (err) {
         console.log(err);   
         error = err;
    } else {
         res.write(html);
         res.end();
    }
});