Сервис прикладного кода

Цикл for-in

Цикл for-in

При написании или редактировании кода появляется предупреждение «Внутри блока for-in должна быть проверка для фильтрации свойств прототипа».

Причина

В коде не включена проверка на принадлежность, свойства объекта к самому этому объекту, а не его предку.

Решение

Включите в цикл for-in фильтрацию для свойств прототипа.

Пример кода с предупреждениемПример кода без предупреждения
for(key in foo){doSomething(key);}
for(key in foo){if (Object.prototype.hasOwnProperty.call(foo, key)){ doSomething(key);}}