Показать сообщение отдельно
  #3 (permalink)  
Старый 11.11.2013, 17:43
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

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

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

И ещё в дополнение:
http://jsperf.com/object-defineproperty-test
__________________
.
Ответить с цитированием