deno.com

for-in 循环保护

要求 for-in 循环包含一个 if 语句。

使用 for-in 循环遍历对象时,会包含通过原型链继承的属性。这种行为可能导致你的 for 循环中出现意料之外的项。

无效示例

for (const key in obj) {
  foo(obj, key);
}

有效示例

for (const key in obj) {
  if (Object.hasOwn(obj, key)) {
    foo(obj, key);
  }
}
for (const key in obj) {
  if (!Object.hasOwn(obj, key)) {
    continue;
  }
  foo(obj, key);
}

您找到所需内容了吗?

隐私政策