javascript - 箭头函数中的可选参数
问题描述
我有一个像这样的处理程序
handleSelect = (k0, k1, v) => {
...
}
};
我想让k1
这里成为可选的。有什么好办法吗?
解决方案
没有什么好办法。这不是特定于 React 或箭头的。
中间带有可选参数的可变参数函数需要解析参数:
handleSelect = (...args) => {
let k0, k1, v;
if (args.length > 2) {
[k0, k1, v0] = args;
} else {
[k0, v0] = args;
k1 = 'default';
}
...
};
这可能会导致 API 晦涩难懂。对于具有多个参数的函数,其中一些参数是可选的,更好的方法是接受带有选项的对象。函数不依赖于这种方式的参数顺序:
handleSelect = ({ k0, k1 = 'default', v }) => {
...
};
推荐阅读
- swift - UITableView reloadRows 有时会崩溃
- mysql - 我想在 yii2 框架中选择并显示两个日期之间的月份和日期
- maven - Jenkins 无法构建 maven 和 gradle 项目
- python - 如何在 python Ubuntu 中将 PPT 文件转换为 PDF?
- javascript - Vue 在 v-for 循环内动态添加一个组件
- python - 根据其他列中的值替换值,如果条件不满足则保持原样
- c++ - 抛出多个异常时,catch 块执行的顺序是什么,为什么?
- kubernetes - 为什么内部通信的通信时间(速度)比以前慢了一点?
- javascript - 如何从控制器渲染两种类型的数据以在 node.js 中查看?
- ajax - 在 ajax 发布请求中,我的应用被 CORS 策略错误阻止