JavaScript. Подробное руководство, 6-е издание, стр. 441
Пример
<b>var о = new Object(): // Создать объект</b><b>Object.prototype.isPrototypeOf(о) //true: о - объект</b><b>Function.prototype.isPrototypeOf(o.toString); // true: toString - функция </b><b>Array.prototype.isPrototypeOf([1,2,3]): // true: [1,2,3] - массив</b><b>// Ту же проверку можно выполнить другим способом</b><b>(о.constructor == Object): // true: о создан с помощью конструктора</b><b>Object() (о.toString.constructor == Function): // true: о.toString - функция</b><b>// Объекты-прототипы сами имеют прототипы. Следующий вызов вернет true, показывая, что</b><b>// объекты-функции наследуют свойства от Function.prototype, а также от Object.prototype. </b><b>Object.prototype.isPrototypeOf(Function.prototype):</b>См. также
Function.prototype, Object.constructor; глава 9
возможно ли добавлять в объект новые и удалять существующие свойства?
Синтаксис
<b>Object.isSealed(o)</b>Аргументы
о Проверяемый объект.
Возвращаемое значение
true, если объект о является нерасширяемым, с недоступными для настройки свойствами, и false - если нет.
Описание
Объект считается нерасширяемым, с недоступными для настройки свойствами, если в него нельзя добавить новые (неунаследованные) свойства и нельзя удалить существующие (неунаследованные) свойства. Функция
<b>Object.isSealed()</b><b>Object.seal()</b><b>Object.freeze().</b><b>Object.preventExtensions(),</b><b>Object.defineProperty(),</b>Обратите внимание, что эта функция вызывается не как метод объекта: это глобальная функция, которая принимает объект в виде аргумента.
См. также
Object.defineProperty(), Object.freeze(), Object.isExtensible(), Object.isFrozen(), Object. preventExtensions(), Object.seal(), раздел 6.8.3
возвращает имена собственных перечислимых свойств
Синтаксис
<b>Object.keys(o)</b>Аргументы
о Объект.
Возвращаемое значение
Массив, содержащий имена всех перечислимых (неунаследованных) свойств объекта о.
Описание
Функция
<b>Object.keys()</b><b>Object.getOwnPropertyNames().</b><b>for/in</b>Обратите внимание, что эта функция вызывается не как метод объекта: это глобальная функция, которая принимает объект в виде аргумента.
Пример
<b>Object.keys({х:1, у:2}) // => [”х", "у"]</b>См. также
Object.getOwnPropertyNames(), разделы 5.5.4, 6.5
предотвращает добавление в объект новых свойств
Синтаксис
<b>Object.preventExtensions(o)</b>Аргументы
о Объект, который должен иметь расширяемый набор атрибутов.
Возвращаемое значение
Объект о с аргументами.
Описание
Функция
<b>Object.preventExtensions()</b><b>extensible</b>Следует отметить, что
<b>Object.preventExtensions()</b>Обратите внимание, что эта функция вызывается не как метод объекта: это глобальная функция, которая принимает объект в виде аргумента.
См. также
Object.freeze(), Object.isExtensible(), Object.seal(), раздел 6.8.3
проверяет, будет ли свойство видимо для цикла <b>for/in</b>
Синтаксис
<b>объект.propertyIsEnumerable(имя_свойства)</b>Аргументы
имя_свойства Строка, содержащая имя свойства объекта.
Возвращаемое значение
Возвращает true, если у объекта есть неунаследованное свойство с именем, указанным в аргументе имя_свойства, и если это свойство «перечислимое», т.е. оно может быть перечислено циклом
<b>for/in</b>Описание
Инструкция
<b>for/in</b><b>propertyIsEnumerable()</b><b>propertyIsEnumerable()</b>