我正在使用JSLint http://JSLint.com确保我的 JavaScript 是“严格的”的工具。
我收到以下错误,但不明白如何修复它:
The body of a for in should be wrapped in an if statement to filter unwanted properties from the prototype
对于以下代码:
for (var i in keypairs) {
...
}
任何人都知道如何解决这个问题,因为它是 JavaScript“严格”的并且不会被 JSLint 标记
If keypairs
是一个数组,那么你应该真正迭代元素,例如:
for(var i = 0; i < keypairs.length; i++) {
...
}
If keypairs
是一个散列,那么 JSLint 正确地建议您检查是否在适当的密钥类型上进行操作(即确认散列是预期的类型)
所以像
for(var i in keypairs) {
if(keypairs.hasOwnProperty(i)) {
...
}
}
其中 if 正在验证任何标准,确保您没有访问原型函数等。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)