Comments 5
Название какое-то корявое. Наводит на мысль что у языка Javascript есть какие-то дополнительные свойства.
На хабре, "современный учебник js", MDN, даже MSDN. Каждая из статей более подробна, чем у вас.
Value по-умолчанию undefined, а не обязательное.
В каком месте оно приватное? Оно по-прежнему доступно из-вне, только immutable.
Строго говоря, оно вообще только динамически их и определяет.
Только writable.
Чего?
P.S. Понял, что значит «вложенное свойство». Если это свойство имеет тип object — свойства самого этого объекта редактировать можно. Но это очевидно, покуда свойство хранит только ссылку на тот объект. Стоило написать понятнее.
value — если это не getter (см. ниже), то value обязательный атрибут.
Value по-умолчанию undefined, а не обязательное.
Обратите внимание, если свойство является вложенным, то оно доступно для редактирования.Что? К слову, стоит упомянуть, что без 'use strickt' при попытке изменения исключение выброшено не будет.
Так что для того, чтобы создать приватное постоянное свойство, вы должны определить его как:
В каком месте оно приватное? Оно по-прежнему доступно из-вне, только immutable.
Помимо настройки свойств, defineProperty может определять их динамически
Строго говоря, оно вообще только динамически их и определяет.
Однако в этом случае нельзя использовать writable, enumerable и configurable
Только writable.
асессоров
Чего?
P.S. Понял, что значит «вложенное свойство». Если это свойство имеет тип object — свойства самого этого объекта редактировать можно. Но это очевидно, покуда свойство хранит только ссылку на тот объект. Стоило написать понятнее.
За исключением случаев очевидного преимущества инкапсуляции и прогрессивных асессоров, можно заметить, что мы не «вызываем» геттер, а получаем его как свойство без скобок
Автор, пожалуйста, доработайте перевод. В таком виде его очень и очень сложно читать.
А что там говорят на лекциях про движок V8?
Вроде бы он отказывается оптимизировать геттеры и сеттеры?
Вроде бы он отказывается оптимизировать геттеры и сеттеры?
А вот вопрос — есть ли возможность изменять неизменяемые поля объектов, типа windows.location, без переопределения в локальной области видимости?
Sign up to leave a comment.
Дополнение свойств в Javascript