Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Добавление функциональности стандартным типам (https://javascript.ru/forum/misc/42694-dobavlenie-funkcionalnosti-standartnym-tipam.html)

okouser 06.11.2013 08:01

Добавление функциональности стандартным типам
 
empty

Яростный Меч 06.11.2013 14:42

defineProperty не поддерживается в старых браузерах.

Skipp 11.11.2013 17:43

Всё зависит от того, что вам требуется в итоге получить. Конечно же для расширения стандартных типов, то добавляйте функционал через prototype, defineProperty не чем особым не отличается, кроме как своим расширенным функционалом и дополнительными возможностями, которые по факту очень редко необходимы для решения поставленных задач. Первый же метод вообще бесполезен, вы просто затрачиваете лишние ресурсы, создавая дополнительные объекты, хотя в таком случаи исходный объект останется девственно чистым, но зачем он вам, если не быть криворуким то и без него всё будет работать.

А на последний вопрос:
https://developer.mozilla.org/en-US/...defineProperty
http://caniuse.com/#search=defineProperty

И ещё в дополнение:
http://jsperf.com/object-defineproperty-test

Skipp 14.11.2013 09:20

Ну идеальных решений нету, всё всегда зависит от поставленной задачи, есть решения максимально эффективные и их найдёт только вы и только под свои нужды.

А насчёт ошибок, не уверен, что они будут расти, вам никто не мешает создать так же метод set в котором будет производиться проверка на наличие методов и свойств у объекта, это в том случаи если методов и свойств подразумевается большое количество, но за частую до такого не доходит, если конечно вы не собираетесь делать RIA в большой команде разработчиков.


Часовой пояс GMT +3, время: 03:40.