Javascript 在对象上意外使用逗号using map
我正在使用AirBnb样式指南,在第一行代码的末尾出现“意外使用逗号”错误:Javascript 在对象上意外使用逗号using map,javascript,eslint,airbnb,Javascript,Eslint,Airbnb,我正在使用AirBnb样式指南,在第一行代码的末尾出现“意外使用逗号”错误: myApp.fields.map(field => (field.obj.label = field.label.default, field.label.textContent = field.obj.label)); 我可以将其重写为以下内容以删除错误: myApp.fields.map(field => field.obj.label = field.label.default);
myApp.fields.map(field => (field.obj.label = field.label.default,
field.label.textContent = field.obj.label));
我可以将其重写为以下内容以删除错误:
myApp.fields.map(field => field.obj.label = field.label.default);
myApp.fields.map(field => field.label.textContent = field.obj.label);
我看到的第一位代码是,map循环只运行一次字段,而第二个字段运行两次
我可以确认上面地图的两部分都在执行,而不仅仅是最后一部分。还有什么我遗漏的吗?因为您没有转换数组,所以可以使用
forEach()
而不是map()
。如果您坚持将其制作成一行,并且不想违反无顺序规则:
myApp.fields.forEach(field => {field.obj.label = field.label.default; field.label.textContent = field.obj.label});
更具可读性:
myApp.fields.forEach((field) => {
field.obj.label = field.label.default;
field.label.textContent = field.obj.label;
});
1) ESLint指定了一般规则,为什么它会特别列出
map()
?2) 如果不转换数组,为什么要使用map?那就使用forEach吧?谢谢,这是可行的,但它会给出错误“箭头函数参数周围的预期圆括号有一个带花括号的主体(箭头parens)”。需要在字段(例如)周围加括号,如果你想在回答中加括号,我会检查