TSLint:forIn 循环必须被过滤
Posted
技术标签:
【中文标题】TSLint:forIn 循环必须被过滤【英文标题】:TSLint: forIn loop must be filtered 【发布时间】:2021-11-26 14:53:01 【问题描述】:我的项目中的 TSLINT 出现错误,关于 forIn 循环。 错误是下一个:
for (... in ...) statements must be filtered with an if statement
我尝试了 Object.prototype.hasOwnProerty.call(object, key) 和 object.hasOwnproperty(key) 这两种解决方案,但我仍然有错误。
代码如下:
const data = result.data
for (const key in data)
// Must use a if statement
if (data.hasOwnProperty(key))
// code...
你知道我错过了什么吗?
谢谢大家
【问题讨论】:
【参考方案1】:您可以通过在 lint 文件中添加配置来禁用此功能。
参考: https://palantir.github.io/tslint/rules/forin/
或 第二种选择: 试试这个:
const data = result.data;
let key;
for (key in data)
if (data.hasOwnProperty(key))
// code...
```
【讨论】:
感谢第一个建议,但我不能因为项目规则,我不能这样做。【参考方案2】:我的错,
其实if语句句柄外面有一行,就是用key...
我自己注意:确保检查语句范围。
【讨论】:
以上是关于TSLint:forIn 循环必须被过滤的主要内容,如果未能解决你的问题,请参考以下文章