Skip to content

Commit

Permalink
ru: update Object description (#16730)
Browse files Browse the repository at this point in the history
  • Loading branch information
rustam-mukhametshin authored Nov 16, 2023
1 parent f6a25b9 commit 3948f9d
Showing 1 changed file with 6 additions and 10 deletions.
16 changes: 6 additions & 10 deletions files/ru/web/javascript/reference/global_objects/object/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,14 @@ slug: Web/JavaScript/Reference/Global_Objects/Object

{{JSRef("Global_Objects", "Object")}}

## Сводка

Тип **`Object`** представляет один из [типов данных JavaScript](/ru/docs/Web/JavaScript/Data_structures). Он используется для хранения различных коллекций с ключами и более сложных сущностей. Объекты могут быть созданы с использованием конструктора {{jsxref("Object/Object", "Object()")}} или [синтаксиса инициализатора / литерала объекта](/ru/docs/Web/JavaScript/Reference/Operators/Object_initializer).

## Описание

Почти все [объекты](/ru/docs/Web/JavaScript/Data_structures#объекты) в JavaScript являются экземплярами `Object`; типичный объект наследует свойства (включая методы) от `Object.prototype`, хотя эти свойства могут быть затенены (т.е. переопределены). Единственные объекты, которые не наследуют от `Object.prototype`, - это те, у которых [прототип `null`](#null-prototype_objects), или которые происходят от других объектов с прототипом `null`.

Изменения в объекте `Object.prototype` видны всем объектам с помощью цепочки прототипов, если свойства и методы, подверженные этим изменениям, не переопределены дальше по цепочке прототипов. Это предоставляет очень мощный, хотя и потенциально опасный механизм для переопределения или расширения поведения объектов. Для обеспечения большей безопасности, `Object.prototype` - единственный объект в основном языке JavaScript, у которого [неизменяемый прототип](/ru/docs/Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf#описание) - прототип `Object.prototype` всегда `null` и не может быть изменен.

## Синтаксис

```js
Expand All @@ -26,14 +30,6 @@ new Object([value])
- `value`
- : Любое значение.

## Описание

Конструктор `Object` создаёт объект-обёртку для переданного значения. Если значением является {{jsxref("Global_Objects/null", "null")}} или {{jsxref("Global_Objects/undefined", "undefined")}}, создаёт и возвращает пустой объект, в противном случае возвращает объект такого типа, который соответствует переданному значению. Если значение уже является объектом, конструктор вернёт это значение.

При вызове в не-конструктором контексте, `Object` ведёт себя идентично коду `new Object()`.

Так же смотрите {{jsxref("Operators/Object_initializer", "синтаксис инициализатора объекта / литеральный синтаксис", "", 1)}}.

## Свойства конструктора `Object`

- `Object.length`
Expand Down

0 comments on commit 3948f9d

Please sign in to comment.