实际上,我正在使用其他人的代码,他们在一行中使用了箭头功能。我无法用常规功能替换它。
这是一行:
const R = (elem) => object(document.querySelector(elem));
我试图将其更改为:
const R = function(elem) {
object(document.querySelector(elem))
};
但是没有好的结果。 :(
答案 0 :(得分:2)
箭头函数具有缩短返回语法的内置方式:如果箭头函数仅返回一行代码,则可以省略语句括号和return关键字。这告诉箭头函数返回该语句。因此,您唯一要做的就是在不使用箭头功能的情况下显式添加return
关键字。
const R = function(elem){ return object(document.querySelector(elem)) };
如果尝试翻译使用this
关键字的箭头功能,请小心。
更新:评论回复
在下面的代码中,使用括号来定义带有函数作为属性的对象。如果不使用括号,则需要大括号并在此箭头函数内返回,否则会出现SyntaxError。
const object = (elem) => ({
css: function(attribute, value) {
elem.style[attribute] = value;
return object(elem);
}
});
没有箭头功能,它将变为:
const object = function(elem) {
return {
css: function(attribute, value) {
elem.style[attribute] = value;
return object(elem);
}
};
}