Показать сообщение отдельно
  #13 (permalink)  
Старый 22.05.2014, 11:59
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Цитата:
Опа, и как я это пропустить умудрился и как давно?
Ну, я узнал об этом где-то год назад, когда в очередной раз листал драфт ES6.

Но на mdn пишут, что свойство deprecated и лучше юзать getPrototypeOf / setPrototypeOf, но мой взгляд свойство оч полезное, т.к. позволяет удобно задавать прототип при декларации объекта через литерал, а следовательно можно сахарно юзать с примесями и т.д.

var a = {
  a: 1,
  __proto__: {
    b: 2
  }
};

alert(a.hasOwnProperty('b') === false);
alert(a.b);


Другое дело, что в ES6 для таких вещей ввели новый тип данных Symbol, и наверное было бы более логично, чтобы можно было делать так:


var a = {
  a: 1,
  @@prototype: {
    b: 2
  }
};
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 22.05.2014 в 12:10.
Ответить с цитированием