В книге Дэвида Флэнагана в главе "Свойства и методы универсального класса Object" столкнулся с термином перечисляемые и не перечисляемые свойства. Раз есть перечисляемые свойства значит есть и не перечисляемые свойства. Хотелось бы узнать что это за свойства и чем отличаются. В интернете не нашел по этой теме ничего подходящего. Поэтому прошу помощи здесь. Всем заранее спасибо.
Выдержка из книги:
Обратите внимание: все свойства объекта, определяемые пользователем, являются перечислимыми. Неперечислимыми обычно являются унаследованные свойства (тема наследования свойств рассматривается в главе 9), поэтому практически всегда этот метод возвращает то же значение, что и метод hasOwnProperty()
Ответ
В цитате речь идет о свойствах объекта.
Они могут быть перечислимыми, и не перечислимыми.
Если свойство перечислимое, то при обходе в цикле for..in его можно будет получить, если не перечислимое - нельзя.
Например:
var o = {
e: "prop"
};
for (var i in o) {
document.write('свойство "' + i + '" перечислимое');
}
document.write('
свойство toString не перечислимое: '+o.toString)
Комментариев нет:
Отправить комментарий