【发布时间】:2019-05-13 20:24:25
【问题描述】:
我正在查看其他人的代码并不断看到以这种风格编写的函数:
getConsents: (_, callback = () => {}) => {
const data = {};
callback(data, true);
}
我知道有些人使用下划线作为在不合适时跳过参数的约定,尽管我无法理解为什么回调函数参数以这种方式编写。
我尝试使用 babel 看看它在 es5 中是否更有意义,但运气不好:
getConsents: (function (_) {
var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {};
var data = {};
callback(data, true);
});
如果有人可以解释这个约定,或者详细说明它在做什么,将不胜感激。
【问题讨论】:
-
这是一个默认回调,如果函数调用时没有传递一个。见default parameters。
标签: javascript ecmascript-6 callback