мда... пока я формулировал сообщение, trikadin и kobezzza уже успели меня опередить =)
|
Цитата:
Правда я не понимаю, почему они не заюзали Символы для этой задачи, например, let foo = { [Symbol.prototype]: { bar: 1 }, get() { return this.bar; } } Ведь символы для того и были созданы и они уже юзаются для таких задач, например, Symbol.iterator |
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
Object.defineProperty(Object.prototype, '__proto__', { set: function(value) { Object.setPrototypeOf(this, value); }, get: function() { return Object.getPrototypeOf(this); } }); или скорее: Object.setPrototypeOf = function(obj, value) { obj.__proto__ = value; }; Object.getPrototypeOf = function(obj) { return obj.__proto__; }; Я почему-то склоняюсь больше ко второму варианту, так как первый был реализован до второго. А насчет их осторожности, тут скорее просто хотят себя огородить от лишних проблем в будущем (вдруг захотят все же убрать свойство). |
Цитата:
|
Цитата:
Цитата:
__proto__ входит туда же, под индексом "B.2.2.1" - http://www.ecma-international.org/ec...type.__proto__ То есть, юзать, конечно же, можно, но, во-первых, отличные от браузеров окружения не обязаны его поддерживать, а во-вторых, это прямо не рекомендуется в спецификации (а значит, в один прекрасный момент может быть запрещено в каком-нибудь 2016 strict mode). |
Где можно посмотреть список фич ES7, поддерживаемых в Babel, желательно, с небольшими примерами?
|
Часовой пояс GMT +3, время: 10:47. |