Я встречал несколько комментариев о том, как не одобряют изменение прототипа объекта JavaScript? Я лично не понимаю, как это может быть проблемой. Например, расширение объекта Array для отображения и включения методов или для создания более надежных методов Date?