Skip to content

Latest commit

 

History

History
5 lines (3 loc) · 1.2 KB

File metadata and controls

5 lines (3 loc) · 1.2 KB

Почему не следует расширять нативные JavaScript-объекты?

Расширение встроенного (нативного) объекта JS означает добавление свойств (функций) к его прототипу. Хотя на первый взгляд это может показаться хорошей идеей, на практике это опасно. Например, ваш код использует несколько библиотек, которые расширяют Array.prototype, добавляя один и тот же метод contains. В результате код будет работать неверно, если поведение этих двух методов не будет одинаковым.

Единственный случай, при котором можно расширить нативный объект — это при создании полифила, создав собственную реализацию метода, который является частью спецификации JS, но может отстутствовать в устаревших браузерах.