Как такового пруфа предоставить не смогу, по большей части это негласное соглашение. "Best practices" - использовать в данном случае для обхода массива обычный цикл for.., либо тот же for (idx in arr), но в купе например с проверкой .hasOwnProperty, т.к. нужно проверять на унаследованные свойства.
"Если вы хотите рассматривать только свойства самого объекта, а не его прототипов, используйте getOwnPropertyNames(), hasOwnProperty() или propertyIsEnumerable. Кроме того, если вы знаете, что не будет вмешательства в код извне, вы можете расширить встроенные прототипы методом проверки."
Здравствуйте.
Как такового пруфа предоставить не смогу, по большей части это негласное соглашение. "Best practices" - использовать в данном случае для обхода массива обычный цикл for.., либо тот же for (idx in arr), но в купе например с проверкой .hasOwnProperty, т.к. нужно проверять на унаследованные свойства.
Из MDN: (https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Statements/for...in)
"Если вы хотите рассматривать только свойства самого объекта, а не его прототипов, используйте
getOwnPropertyNames()
,hasOwnProperty()
илиpropertyIsEnumerable
. Кроме того, если вы знаете, что не будет вмешательства в код извне, вы можете расширить встроенные прототипы методом проверки."Спасибо.