The body of a for-in should be wrapped in an if statement to filter unwanted properties from the prototype guard-for-in,怎样去除eslint的这个报错
时间: 2024-06-13 14:07:42 浏览: 327
glibc-all-in-one::wrapped_gift:便捷的glibc二进制和调试文件下载器以及源代码自动生成器-one source code
这个报错是由于ESLint的guard-for-in规则检测到了for-in循环中没有使用if语句来过滤掉原型链上的属性。为了解决这个问题,你可以在for-in循环中添加一个if语句来判断属性是否是对象自身的属性,如果不是则跳过该属性。你可以使用hasOwnProperty方法来判断属性是否是对象自身的属性。
以下是修改后的代码示例:
```
Object.keys(processBar).map((item) => {
if (processBar.hasOwnProperty.call(processBar, item)) {
return ((processBar[item].loaded / processBar[item].total) * 100 || 0);
}
});
```
在这个示例中,我们使用了hasOwnProperty方法来判断属性是否是对象自身的属性,如果是则返回属性值,否则跳过该属性。
阅读全文