diff options
| author | Alexey Pyltsyn <lex61rus@gmail.com> | 2021-10-20 13:28:52 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-10-20 13:28:52 +0300 |
| commit | 1386fed7d38652d5848d315927e7e23a66cffd13 (patch) | |
| tree | eb4b9adfec3f46c77304a1b9461d44357c8164c8 /files/ru/web/javascript/reference/global_objects/object | |
| parent | b0f32a46245b1033098a5a9826a7818fa4e65dde (diff) | |
| download | translated-content-1386fed7d38652d5848d315927e7e23a66cffd13.tar.gz translated-content-1386fed7d38652d5848d315927e7e23a66cffd13.tar.bz2 translated-content-1386fed7d38652d5848d315927e7e23a66cffd13.zip | |
[RU] Remove `name` attribute from headings (#2788)
Diffstat (limited to 'files/ru/web/javascript/reference/global_objects/object')
31 files changed, 297 insertions, 297 deletions
diff --git a/files/ru/web/javascript/reference/global_objects/object/__definegetter__/index.html b/files/ru/web/javascript/reference/global_objects/object/__definegetter__/index.html index 0d5fe70693..78bc6d423c 100644 --- a/files/ru/web/javascript/reference/global_objects/object/__definegetter__/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/__definegetter__/index.html @@ -12,13 +12,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/__defineGetter__ --- <div>{{JSRef("Global_Objects", "Object")}} {{non-standard_header}} {{deprecated_header}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <strong><code>__defineGetter__()</code></strong> привязывает свойство объекта к функции, вызываемой каждый раз при поиске этого свойства.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>obj</var>.__defineGetter__(<var>prop</var>, <var>func</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>prop</code></dt> <dd>Строка, содержащая имя свойства, привязываемого к заданной функции.</dd> @@ -26,10 +26,10 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/__defineGetter__ <dd>Функция, привязываемая к поиску указанного свойства.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>__defineGetter__()</code> позволяет определить {{jsxref("Operators/get", "геттер", "", 1)}} на уже существующем объекте.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">// Нестандартный и устаревший способ var o = {}; @@ -54,13 +54,13 @@ Object.defineProperty(o, 'gimmeFive', { console.log(o.gimmeFive); // 5 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <p>Не является частью какой-либо спецификации.</p> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.__defineSetter__()")}}</li> <li>оператор {{jsxref("Operators/get", "get")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/__definesetter__/index.html b/files/ru/web/javascript/reference/global_objects/object/__definesetter__/index.html index a761a45b07..65f9c87de9 100644 --- a/files/ru/web/javascript/reference/global_objects/object/__definesetter__/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/__definesetter__/index.html @@ -13,13 +13,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/__defineSetter__ --- <div>{{JSRef("Global_Objects", "Object")}} {{non-standard_header}} {{deprecated_header}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <strong><code>__defineSetter__()</code></strong> привязывает свойство объекта к функции, вызываемой каждый раз при попытке установить значение этого свойства.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>obj</var>.__defineSetter__(<var>prop</var>, <var>fun</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>prop</code></dt> <dd>Строка, содержащая имя свойства, привязываемого к заданной функции.</dd> @@ -34,10 +34,10 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/__defineSetter__ </dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>__defineSetter__()</code> позволяет определять {{jsxref("Operators/set", "сеттер", "", 1)}} на уже существующем объекте.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">// Нестандартный и устаревший способ var o = {}; @@ -67,13 +67,13 @@ console.log(o.value); // undefined console.log(o.anotherValue); // 5 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <p>Не является частью какой-либо спецификации.</p> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.__defineGetter__()")}}</li> <li>оператор {{jsxref("Operators/set", "set")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/__lookupgetter__/index.html b/files/ru/web/javascript/reference/global_objects/object/__lookupgetter__/index.html index 060446cfb2..019967d739 100644 --- a/files/ru/web/javascript/reference/global_objects/object/__lookupgetter__/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/__lookupgetter__/index.html @@ -13,23 +13,23 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/__lookupGetter__ --- <div>{{JSRef("Global_Objects", "Object")}} {{non-standard_header}} {{deprecated_header}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <strong><code>__lookupGetter__()</code></strong> возвращает функцию, привязанную к геттеру указанного свойства.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>obj</var>.__lookupGetter__(<var>sprop</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>sprop</code></dt> <dd>Строка, содержащая имя свойства, чей геттер должен быть возвращён.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Если для свойства объекта был определён геттер, то на него невозможно сослаться через это свойство, поскольку оно ссылается на возвращаемое значение геттера. Метод <code>__lookupGetter__()</code> может использоваться для получения ссылки на геттер.</p> <p>Сегодня это возможно сделать стандартным способом через {{jsxref("Object.getOwnPropertyDescriptor()")}} и {{jsxref("Object.getPrototypeOf()")}}.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">var obj = { get foo() { return Math.random() > 0.5 ? 'foo' : 'bar'; @@ -47,13 +47,13 @@ Object.getOwnPropertyDescriptor(obj, 'foo').get; // (function() { return Math.random() > 0.5 ? 'foo' : 'bar'; }) </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <p>Не является частью какой-либо спецификации.</p> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.__lookupSetter__()")}}</li> <li>оператор {{jsxref("Operators/get", "get")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/__lookupsetter__/index.html b/files/ru/web/javascript/reference/global_objects/object/__lookupsetter__/index.html index fe4c2b22ae..c338f0e029 100644 --- a/files/ru/web/javascript/reference/global_objects/object/__lookupsetter__/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/__lookupsetter__/index.html @@ -13,23 +13,23 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/__lookupSetter__ --- <div>{{JSRef("Global_Objects", "Object")}} {{non-standard_header}} {{deprecated_header}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <strong><code>__lookupSetter__()</code></strong> возвращает функцию, привязанную к сеттеру указанного свойства.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>obj</var>.__lookupSetter__(<var>sprop</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>sprop</code></dt> <dd>Строка, содержащая имя свойства, чей сеттер должен быть возвращён.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Если для свойства объекта был определён сеттер, то на него невозможно сослаться через это свойство, поскольку оно ссылается на возвращаемое значение сеттера. Метод <code>__lookupSetter__()</code> может использоваться для получения ссылки на сеттер.</p> <p>Сегодня это возможно сделать стандартным способом через {{jsxref("Object.getOwnPropertyDescriptor()")}}.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">var obj = { set foo(value) { return this.bar = value; @@ -47,13 +47,13 @@ Object.getOwnPropertyDescriptor(obj, 'foo').set; // (function(value) { this.bar = value; }) </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <p>Не является частью какой-либо спецификации.</p> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.__lookupGetter__()")}}</li> <li>оператор {{jsxref("Operators/set", "set")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/assign/index.html b/files/ru/web/javascript/reference/global_objects/object/assign/index.html index 354f4ce4e5..29e6ee2ae7 100644 --- a/files/ru/web/javascript/reference/global_objects/object/assign/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/assign/index.html @@ -17,11 +17,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/assign <p>Метод <code><strong>Object.assign()</strong></code> используется для копирования значений всех собственных перечисляемых свойств из одного или более исходных объектов в целевой объект. После копирования он возвращает целевой объект.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.assign(<var>target</var>, ...<var>sources</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>target</code></dt> @@ -30,11 +30,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/assign <dd>Исходные объекты.</dd> </dl> -<h3 id="Return_value" name="Return_value">Возвращаемое значение</h3> +<h3 id="Return_value">Возвращаемое значение</h3> <p>Возвращается получившийся целевой объект.</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>Object.assign()</code> копирует из исходных объектов в целевой объект только <em>перечисляемые</em> и <em>собственные</em> свойства. Он использует внутренний метод <code>[[Get]]</code> на исходных объектах и внутренний метод <code>[[Set]]</code> на целевом объекте, так что он также вызывает геттеры и сеттеры. Именно поэтому он <em>присваивает</em> свойства вместо простого копирования или определения новых свойств. Это поведение может сделать метод непригодным для вливания новых свойств в прототип, если вливаемые исходные объекты содержат геттеры. Вместо него для копирования в прототипы определений свойств, включая признак их перечисляемости, следует использовать методы {{jsxref("Object.getOwnPropertyDescriptor()")}} и {{jsxref("Object.defineProperty()")}}.</p> @@ -44,16 +44,16 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/assign <p>Обратите внимание, что метод <code>Object.assign()</code> не выкидывает исключения, если в качестве исходных значений выступают {{jsxref("null")}} или {{jsxref("undefined")}}.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> -<h3 id="Example:_Cloning_an_object" name="Example:_Cloning_an_object">Пример: клонирование объекта</h3> +<h3 id="Example:_Cloning_an_object">Пример: клонирование объекта</h3> <pre class="brush: js">var obj = { a: 1 }; var copy = Object.assign({}, obj); console.log(copy); // { a: 1 } </pre> -<h3 id="Example:_Merging_objects" name="Example:_Merging_objects">Пример: слияние объектов</h3> +<h3 id="Example:_Merging_objects">Пример: слияние объектов</h3> <pre class="brush: js">var o1 = { a: 1 }; var o2 = { b: 2 }; @@ -64,7 +64,7 @@ console.log(obj); // { a: 1, b: 2, c: 3 } console.log(o1); // { a: 1, b: 2, c: 3 }, изменился и сам целевой объект. </pre> -<h3 id="Example:_Symbol_properties" name="Example:_Symbol_properties">Пример: копирование символьных свойств</h3> +<h3 id="Example:_Symbol_properties">Пример: копирование символьных свойств</h3> <pre class="brush: js">var o1 = { a: 1 }; var o2 = { [Symbol('foo')]: 2 }; @@ -73,7 +73,7 @@ var obj = Object.assign({}, o1, o2); console.log(obj); // { a: 1, [Symbol("foo")]: 2 } </pre> -<h3 id="Example:_Only_own_enumerable_properties" name="Example:_Only_own_enumerable_properties">Пример: наследуемые и неперечисляемые свойства не копируются</h3> +<h3 id="Example:_Only_own_enumerable_properties">Пример: наследуемые и неперечисляемые свойства не копируются</h3> <pre class="brush: js">var obj = Object.create({ foo: 1 }, { // foo является унаследованным свойством. bar: { @@ -89,7 +89,7 @@ var copy = Object.assign({}, obj); console.log(copy); // { baz: 3 } </pre> -<h3 id="Example:_Primitives" name="Example:_Primitives">Пример: примитивы оборачиваются в объекты</h3> +<h3 id="Example:_Primitives">Пример: примитивы оборачиваются в объекты</h3> <pre class="brush: js">var v1 = '123'; var v2 = true; @@ -102,7 +102,7 @@ var obj = Object.assign({}, v1, null, v2, undefined, v3, v4); console.log(obj); // { "0": "1", "1": "2", "2": "3" } </pre> -<h3 id="Example:_Exceptions" name="Example:_Exceptions">Пример: исключения прерывают текущую задачу копирования</h3> +<h3 id="Example:_Exceptions">Пример: исключения прерывают текущую задачу копирования</h3> <pre class="brush: js">var target = Object.defineProperty({}, 'foo', { value: 1, @@ -120,7 +120,7 @@ console.log(target.foo3); // undefined, метод assign завершился, console.log(target.baz); // undefined, третий исходный объект так же не скопировался. </pre> -<h3 id="Example:_Copy_accessors" name="Example:_Copy_accessors">Пример: копирование методов доступа</h3> +<h3 id="Example:_Copy_accessors">Пример: копирование методов доступа</h3> <pre class="brush: js">var obj = { foo: 1, @@ -149,7 +149,7 @@ console.log(copy); // { foo:1, get bar() { return 2 } } </pre> -<h2 id="Polyfill" name="Polyfill">Полифил</h2> +<h2 id="Polyfill">Полифил</h2> <p>Этот полифил не поддерживает символьные свойства, поскольку ES5 всё равно не поддерживает символы:</p> @@ -186,7 +186,7 @@ console.log(copy); } </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -203,13 +203,13 @@ console.log(copy); </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div> </div> <div id="compat-mobile">{{Compat("javascript.builtins.Object.assign")}}</div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.defineProperties()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/constructor/index.html b/files/ru/web/javascript/reference/global_objects/object/constructor/index.html index 5a09a03ade..9f9debd1cb 100644 --- a/files/ru/web/javascript/reference/global_objects/object/constructor/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/constructor/index.html @@ -10,9 +10,9 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/constructor --- <div> {{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Возвращает ссылку на функцию {{jsxref("Global_Objects/Object", "Object")}}, создавшую прототип экземпляра. Обратите внимание, что значение этого свойства является ссылкой на саму функцию, а не строкой, содержащей имя функции. Для примитивных значений, вроде <code>1</code>, <code>true</code> или <code>"test"</code>, значение доступно только для чтения.</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Все объекты наследуют свойство <code>constructor</code> из своего прототипа:</p> <pre class="brush: js">var o = {}; o.constructor === Object; // true @@ -23,8 +23,8 @@ a.constructor === Array; // true var n = new Number(3); n.constructor === Number; // true </pre> -<h2 id="Examples" name="Examples">Примеры</h2> -<h3 id="Example:_Displaying_the_constructor_of_an_object" name="Example:_Displaying_the_constructor_of_an_object">Пример: отображение конструктора объекта</h3> +<h2 id="Examples">Примеры</h2> +<h3 id="Example:_Displaying_the_constructor_of_an_object">Пример: отображение конструктора объекта</h3> <p>В следующем примере создаётся прототип <code>Tree</code> и объект этого типа <code>theTree</code>. Затем в примере отображается свойство <code>constructor</code> объекта <code>theTree</code>.</p> <pre class="brush: js">function Tree(name) { this.name = name; @@ -38,7 +38,7 @@ console.log("theTree.constructor равен " + theTree.constructor); this.name = name; } </pre> -<h3 id="Example:_Changing_the_constructor_of_an_object" name="Example:_Changing_the_constructor_of_an_object">Пример: изменение конструктора объекта</h3> +<h3 id="Example:_Changing_the_constructor_of_an_object">Пример: изменение конструктора объекта</h3> <p>Следующий пример показывает, как изменить конструктор значений общих объектов. Не затрагиваются только значения <code>true</code>, <code>1</code> и <code>"тест"</code>, поскольку они имеют родные конструкторы только для чтения. Этот пример показывает, что полагаться на свойство <code>constructor</code> объекта не всегда безопасно.</p> <pre class="brush: js">function Type() {} @@ -96,7 +96,7 @@ function String() { [native code] },false,тест </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> <tr> @@ -121,6 +121,6 @@ function String() { </tr> </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div> <p>{{Compat}}</p> diff --git a/files/ru/web/javascript/reference/global_objects/object/create/index.html b/files/ru/web/javascript/reference/global_objects/object/create/index.html index 9af356adc0..f7b4d2c69b 100644 --- a/files/ru/web/javascript/reference/global_objects/object/create/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/create/index.html @@ -15,11 +15,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/create <p>Метод <code><strong>Object.create()</strong></code> создаёт новый объект с указанным прототипом и свойствами.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox notranslate"><code>Object.create(<var>proto</var>[, <var>propertiesObject</var>])</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>proto</code></dt> @@ -32,13 +32,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/create <p>Новый объект с заданным прототипом и свойствами</p> -<h3 id="Throws" name="Throws">Выбрасываемые исключения</h3> +<h3 id="Throws">Выбрасываемые исключения</h3> <p>Выбрасывает исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}, если параметр <code>proto</code> не является {{jsxref("Global_Objects/null", "null")}} или объектом (исключение составляют объекты-обёртки примитивных типов).</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> -<h3 id="Example.3A_Classical_inheritance_with_Object.create" name="Example.3A_Classical_inheritance_with_Object.create()">Пример: классическое наследование с <code>Object.create()</code></h3> +<h3 id="Example.3A_Classical_inheritance_with_Object.create">Пример: классическое наследование с <code>Object.create()</code></h3> <p>Ниже показан пример использования <code>Object.create()</code> для имитации классического наследования. Это пример одиночного наследования, поскольку только его поддерживает JavaScript.</p> @@ -88,7 +88,7 @@ MyClass.prototype.myMethod = function() { <p>Функция примешивания должна копировать функции из прототипа суперкласса в прототип подкласса, она должна предоставляться пользователем. Примером примеси может служить функция <a href="http://api.jquery.com/jQuery.extend/">jQuery.extend()</a>.</p> -<h3 id="Example.3A_Using_propertiesObject_argument_with_Object.create" name="Example.3A_Using_propertiesObject_argument_with_Object.create()">Пример: использование аргумента <code>propertiesObject</code> с <code>Object.create()</code></h3> +<h3 id="Example.3A_Using_propertiesObject_argument_with_Object.create">Пример: использование аргумента <code>propertiesObject</code> с <code>Object.create()</code></h3> <pre class="brush: js notranslate">var o; @@ -155,7 +155,7 @@ o2 = Object.create({}, { }); </pre> -<h2 id="Polyfill" name="Polyfill">Полифил</h2> +<h2 id="Polyfill">Полифил</h2> <p>Для этого полифила необходима правильно работающая Object.prototype.hasOwnProperty.</p> @@ -204,7 +204,7 @@ o2 = Object.create({}, { } </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -226,11 +226,11 @@ o2 = Object.create({}, { </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div>{{Compat("javascript.builtins.Object.create")}}</div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.defineProperty()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/defineproperties/index.html b/files/ru/web/javascript/reference/global_objects/object/defineproperties/index.html index 5f76063f75..25cde1e310 100644 --- a/files/ru/web/javascript/reference/global_objects/object/defineproperties/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/defineproperties/index.html @@ -14,15 +14,15 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/defineProperties --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>Object.defineProperties()</strong></code> определяет новые или изменяет существующие свойства, непосредственно на объекте, возвращая этот объект.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.defineProperties(<var>obj</var>, <var>props</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> @@ -57,11 +57,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/defineProperties </dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>Object.defineProperties()</code>, по сути, определяет все свойства, соответствующие собственным свойствам объекта <code>props</code>, на объекте <code>obj</code>.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">Object.defineProperties(obj, { 'property1': { @@ -76,7 +76,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/defineProperties }); </pre> -<h2 id="Polyfill" name="Polyfill">Полифил</h2> +<h2 id="Polyfill">Полифил</h2> <p>Предполагается, что среда выполнения осталась нетронутой, все имена и свойства ссылаются на свои изначальные значения. Оригинальный метод <code>Object.defineProperties</code> почти полностью эквивалентен (смотрите комментарий в функции <code>isCallable</code>) следующей реализации на JavaScript:</p> @@ -153,7 +153,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/defineProperties } </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -175,11 +175,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/defineProperties </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.defineProperty()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/defineproperty/index.html b/files/ru/web/javascript/reference/global_objects/object/defineproperty/index.html index f4e2293986..05c18092f1 100644 --- a/files/ru/web/javascript/reference/global_objects/object/defineproperty/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/defineproperty/index.html @@ -13,15 +13,15 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/defineProperty --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>Object.defineProperty()</strong></code> определяет новое или изменяет существующее свойство непосредственно на объекте, возвращая этот объект.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.defineProperty(<var>obj</var>, <var>prop</var>, <var>descriptor</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> @@ -32,7 +32,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/defineProperty <dd>Дескриптор определяемого или изменяемого свойства.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Этот метод позволяет точно добавлять или изменять свойства объекта. Обычное добавление свойств через присваивание создаёт свойства, которые можно увидеть через перечисление свойств (с помощью цикла {{jsxref("Statements/for...in", "for...in")}} или метода {{jsxref("Object.keys")}}), чьи значения могут быть изменены и которые могут быть {{jsxref("Operators/delete", "удалены", "", 1)}}. Этот же метод позволяет настроить эти дополнительные детали свойства.</p> @@ -112,11 +112,11 @@ Object.defineProperty(obj, 'key', withValue('static')); (Object.freeze || Object)(Object.prototype); </pre> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <p>Если вы хотите посмотреть, как использовать метод <code>Object.defineProperty()</code> с синтаксисом <em>похожим-на-бинарные-флаги</em>, смотрите <a href="/ru/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty/Additional_examples">дополнительные примеры</a>.</p> -<h3 id="Example:_Creating_a_property" name="Example:_Creating_a_property">Пример: создание свойства</h3> +<h3 id="Example:_Creating_a_property">Пример: создание свойства</h3> <p>Если указанное свойство не существует в объекте, метод <code>Object.defineProperty()</code> создаст новое свойство по переданному описанию. Поля в дескрипторе могут быть опущены, в этом случае их значения будут значениями по умолчанию. Все логические поля будут по умолчанию установлены в <code>false</code>. Поля <code>value</code>, <code>get</code> и <code>set</code> по умолчанию будут установлены в {{jsxref("Global_Objects/undefined", "undefined")}}. Свойство, определённое без атрибутов <code>get</code>/<code>set</code>/<code>value</code>/<code>writable</code> называется «общим», а дескриптор данных — «типовым».</p> @@ -156,7 +156,7 @@ Object.defineProperty(o, 'conflict', { // доступа </pre> -<h3 id="Example:_Modifying_a_property" name="Example:_Modifying_a_property">Пример: изменение свойства</h3> +<h3 id="Example:_Modifying_a_property">Пример: изменение свойства</h3> <p>Если свойство уже существует, метод <code>Object.defineProperty()</code> попытается изменить свойство в соответствии со значениями в дескрипторе и текущим состоянием объекта. Если у старого дескриптора атрибут <code>configurable</code> был установлен в <code>false</code> (говорит, что свойство является «ненастраиваемым»), то никакие атрибуты, кроме атрибута <code>writable</code>, не смогут быть изменены. В этом случае так же невозможно переключаться между типами дескрипторов.</p> @@ -164,7 +164,7 @@ Object.defineProperty(o, 'conflict', { <p>При попытке изменить ненастраиваемые атрибуты свойства будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}} (кроме случая изменения атрибута <code>writable</code>), даже в том случае, если текущее и новое значения идентичны.</p> -<h4 id="Writable_attribute" name="Writable_attribute">Атрибут <code>writable</code></h4> +<h4 id="Writable_attribute">Атрибут <code>writable</code></h4> <p>Если атрибут <code>writable</code> свойства установлен в <code>false</code>, свойство становится «незаписываемым». Ему невозможно будет присвоить новое значение.</p> @@ -183,7 +183,7 @@ console.log(o.a); // Выведет 37. Присваивание не срабо <p>Как видно в этом примере, попытка записи в незаписываемое свойство его не изменило, но и исключение так же не было выброшено.</p> -<h4 id="Enumerable_attribute" name="Enumerable_attribute">Атрибут <code>enumerable</code></h4> +<h4 id="Enumerable_attribute">Атрибут <code>enumerable</code></h4> <p>Атрибут <code>enumerable</code> свойства определяет, просматривается ли свойство в цикле {{jsxref("Statements/for...in", "for...in")}} и методом {{jsxref("Object.keys()")}} или нет.</p> @@ -208,7 +208,7 @@ o.propertyIsEnumerable('b'); // false o.propertyIsEnumerable('c'); // false </pre> -<h4 id="Configurable_attribute" name="Configurable_attribute">Атрибут <code>configurable</code></h4> +<h4 id="Configurable_attribute">Атрибут <code>configurable</code></h4> <p>Атрибут <code>configurable</code> одновременно контролирует, может ли свойство быть удалено из объекта и могут ли быть изменены его атрибуты (кроме контроля изменения атрибута <code>writable</code>).</p> @@ -231,7 +231,7 @@ console.log(o.a); // Выведет 1 <p>Если бы атрибут <code>configurable</code> объекта <code>o.a</code> был установлен в <code>true</code>, никакие ошибки не были бы выброшены и в конце свойство было бы удалено.</p> -<h3 id="Example:_Adding_properties_and_default_values" name="Example:_Adding_properties_and_default_values">Пример: добавление свойств и значений по умолчанию</h3> +<h3 id="Example:_Adding_properties_and_default_values">Пример: добавление свойств и значений по умолчанию</h3> <p>Важно понимать, как устанавливаются значения по умолчанию атрибутам свойств. Часто существует разница между простым назначением значения посредством точечной нотации и использованием метода <code>Object.defineProperty()</code>, что и показывает пример ниже.</p> @@ -258,7 +258,7 @@ Object.defineProperty(o, 'a', { }); </pre> -<h3 id="Example:_Custom_setters_and_getters" name="Example:_Custom_setters_and_getters">Пример: пользовательские сеттеры и геттеры</h3> +<h3 id="Example:_Custom_setters_and_getters">Пример: пользовательские сеттеры и геттеры</h3> <p>Пример ниже показывает, как реализовать самоархивирующийся объект. При установке свойства <code>temperature</code> в массив <code>archive</code> попадает запись журнала.</p> @@ -287,7 +287,7 @@ arc.temperature = 13; arc.getArchive(); // [{ val: 11 }, { val: 13 }] </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -309,12 +309,12 @@ arc.getArchive(); // [{ val: 11 }, { val: 13 }] </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> <p>На основе <a class="external" href="http://kangax.github.com/es5-compat-table/">таблицы совместимости Kangax</a>.</p> -<h3 id="Redefining_the_length_property_of_an_Array_object" name="Redefining_the_length_property_of_an_Array_object">Переопределение свойства <code>length</code> на объекте <code>Array</code></h3> +<h3 id="Redefining_the_length_property_of_an_Array_object">Переопределение свойства <code>length</code> на объекте <code>Array</code></h3> <p>На массивах возможно переопределить свойство {{jsxref("Array.length", "length")}}, при условии соблюдения обычных ограничений на переопределение. (Изначально свойство {{jsxref("Array.length", "length")}} является ненастраиваемым, неперечисляемым и записываемым. Таким образом, на неизмененном массиве возможно изменить значение свойства {{jsxref("Array.length", "length")}} либо сделать его незаписываемым. Его перечисляемость или настраиваемость изменить нельзя, так же как и его записываемость, если оно сделано не записываемым.) Однако не все браузеры поддерживают такое переопределение.</p> @@ -326,7 +326,7 @@ arc.getArchive(); // [{ val: 11 }, { val: 13 }] <p>Только Internet Explorer 9 и выше, а так же Firefox 23 и выше, по-видимому, полностью и правильно реализуют переопределение свойства {{jsxref("Array.length", "length")}} массивов. В настоящее время не стоит полагаться на работу переопределения свойства {{jsxref("Array.length", "length")}} массива, или что оно работает определённым образом. И даже если вы <em>можете</em> положиться на это, <a href="http://whereswalden.com/2013/08/05/new-in-firefox-23-the-length-property-of-an-array-can-be-made-non-writable-but-you-shouldnt-do-it/">есть действительно веская причина не делать этого</a>.</p> -<h3 id="Internet_Explorer_8_specific_notes" name="Internet_Explorer_8_specific_notes">Примечания по Internet Explorer 8</h3> +<h3 id="Internet_Explorer_8_specific_notes">Примечания по Internet Explorer 8</h3> <p>Реализация метода <code>Object.defineProperty()</code> в Internet Explorer 8 предусматривает, что он может быть <a class="external" href="http://msdn.microsoft.com/en-us/library/dd229916%28VS.85%29.aspx">использован только для объектов DOM</a>. Нужно также отметить несколько моментов:</p> @@ -343,7 +343,7 @@ arc.getArchive(); // [{ val: 11 }, { val: 13 }] attempt to define a "prototype" property, on a function, with <code>writable: false</code> doesn't work as expected.</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li><a href="/ru/docs/Enumerability_and_ownership_of_properties">Перечисляемость и собственность свойств</a></li> diff --git a/files/ru/web/javascript/reference/global_objects/object/freeze/index.html b/files/ru/web/javascript/reference/global_objects/object/freeze/index.html index bd987a2915..30ae4dc466 100644 --- a/files/ru/web/javascript/reference/global_objects/object/freeze/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/freeze/index.html @@ -13,11 +13,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/freeze <p>Метод <code><strong>Object.freeze()</strong></code> замораживает объект: это значит, что он предотвращает добавление новых свойств к объекту, удаление старых свойств из объекта и изменение существующих свойств или значения их атрибутов перечисляемости, настраиваемости и записываемости. В сущности, объект становится эффективно неизменным. Метод возвращает замороженный объект.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.freeze(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> @@ -28,13 +28,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/freeze <p>Замороженный объект</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>К замороженному объекту нельзя добавить никаких свойств, так же как и удалить свойства из замороженного объекта. Любые попытки сделать это потерпят неудачу, либо молча, либо выбросив исключение {{jsxref("Global_Objects/TypeError", "TypeError")}} (как правило, но не обязательно, это происходит в {{jsxref("Functions_and_function_scope/Strict_mode", "строгом режиме", "", 1)}}).</p> <p>Значения свойств-данных не могут быть изменены. Свойства-доступы (геттеры и сеттеры) работают как положено (и всё ещё создают иллюзию, что вы изменили значение). Обратите внимание, что значения, являющиеся объектами, всё ещё могут быть изменены, если только они так же не были заморожены.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">var obj = { prop: function() {}, @@ -112,7 +112,7 @@ obj2.internal.a = 'другоеЗначение'; obj2.internal.a; // undefined </pre> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5 если аргумент метода не является объектом (является примитивным значением), будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES2015 такой аргумент будет рассматриваться, как простой замороженный объект и метод его просто вернёт.</p> @@ -123,7 +123,7 @@ TypeError: 1 is not an object // код ES5 1 // код ES2015 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -150,11 +150,11 @@ TypeError: 1 is not an object // код ES5 </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div>{{Compat("javascript.builtins.Object.freeze")}}</div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.isFrozen()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/getownpropertydescriptor/index.html b/files/ru/web/javascript/reference/global_objects/object/getownpropertydescriptor/index.html index 5e6508d9a4..5b2805579e 100644 --- a/files/ru/web/javascript/reference/global_objects/object/getownpropertydescriptor/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/getownpropertydescriptor/index.html @@ -10,13 +10,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDes --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>Object.getOwnPropertyDescriptor()</strong></code> возвращает дескриптор свойства для <dfn>собственного свойства</dfn> (то есть такого, которое находится непосредственно в объекте, а не получено через цепочку прототипов) переданного объекта.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.getOwnPropertyDescriptor(<var>obj</var>, <var>prop</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> <dd>Объект, в котором ищется свойство.</dd> @@ -24,10 +24,10 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDes <dd>Имя свойства, чьё описание будет возвращено.</dd> </dl> -<h3 id="Returns" name="Returns">Возвращаемое значение</h3> +<h3 id="Returns">Возвращаемое значение</h3> <p>Дескриптор переданного свойства, если оно присутствует в объекте, либо {{jsxref("undefined")}}, если его там нет.</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Этот метод позволяет просмотреть точное описание свойства. <dfn>Свойство</dfn> в JavaScript состоит из строкового имени и дескриптора свойства. Подробная информация о типах дескрипторов свойств и их атрибутах может быть найдена в описании метода {{jsxref("Object.defineProperty()")}}.</p> <p><dfn>Дескриптор свойства</dfn> — это запись с некоторыми из следующих атрибутов:</p> <dl> @@ -45,7 +45,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDes <dd>Значение <code>true</code>, если это свойство доступно при перечислении свойств содержащего его объекта, иначе <code>false</code>.</dd> </dl> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">var o, d; o = { get foo() { return 17; } }; @@ -62,7 +62,7 @@ d = Object.getOwnPropertyDescriptor(o, 'baz'); // d равен { value: 8675309, writable: false, enumerable: false, configurable: false } </pre> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5, если первый аргумент метода не является объектом (является примитивным значением), будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES6 такой аргумент будет сначала приведён к объекту.</p> <pre class="brush: js">> Object.getOwnPropertyDescriptor('foo', 0) TypeError: "foo" is not an object // код ES5 @@ -71,7 +71,7 @@ TypeError: "foo" is not an object // код ES5 { configurable: false, enumerable: true, value: 'f', writable: false } // код ES6 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> <tr> @@ -92,10 +92,10 @@ TypeError: "foo" is not an object // код ES5 </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.defineProperty()")}}</li> </ul> diff --git a/files/ru/web/javascript/reference/global_objects/object/getownpropertynames/index.html b/files/ru/web/javascript/reference/global_objects/object/getownpropertynames/index.html index c280afe9ba..9d7c319b68 100644 --- a/files/ru/web/javascript/reference/global_objects/object/getownpropertynames/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/getownpropertynames/index.html @@ -17,11 +17,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyNam <p>{{EmbedInteractiveExample("pages/js/object-getownpropertynames.html")}}</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="brush: js"><code>Object.getOwnPropertyNames(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> @@ -32,13 +32,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyNam <p>Массив строк, который соответствует свойствам, найденным непосредственно в данном объекте.</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>Object.getOwnPropertyNames</code> возвращает массив строк, соответствующих перечисляемым <em>и неперечисляемым</em> свойствам, найденным непосредственно в объекте <code>obj</code>. Порядок перечисляемых свойств в массиве соответствует порядку при обходе объекта циклом {{jsxref("Statements/for...in", "for...in")}} (или при возврате методом {{jsxref("Object.keys")}}). Порядок неперечисляемых свойств в массиве, а также их местоположение среди перечисляемых свойств не определены.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> -<h3 id="Example:_Using_Object.getOwnPropertyNames" name="Example:_Using_Object.getOwnPropertyNames">Пример: использование <code>Object.getOwnPropertyNames()</code></h3> +<h3 id="Example:_Using_Object.getOwnPropertyNames">Пример: использование <code>Object.getOwnPropertyNames()</code></h3> <pre class="brush: js">var arr = ['a', 'b', 'c']; console.log(Object.getOwnPropertyNames(arr).sort()); // напечатает '0,1,2,length' @@ -89,7 +89,7 @@ alert( ); </pre> -<h3 id="Example:_Get_Non-Enumerable_Only" name="Example:_Get_Non-Enumerable_Only">Пример: получение только не перечисляемых свойств</h3> +<h3 id="Example:_Get_Non-Enumerable_Only">Пример: получение только не перечисляемых свойств</h3> <p>Здесь используется функция {{jsxref("Array.prototype.filter()")}} для удаления перечисляемых ключей (полученных через метод {{jsxref("Object.keys()")}}) из списка всех ключей (полученных через метод <code>Object.getOwnPropertyNames()</code>) и, таким образом, оставляющая только неперечисляемые ключи.</p> @@ -110,7 +110,7 @@ var nonenum_only = enum_and_nonenum.filter(function(key) { console.log(nonenum_only); </pre> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5, если аргумент метода не является объектом (является примитивным значением), будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES6 такой аргумент будет приведён к объекту.</p> @@ -121,7 +121,7 @@ TypeError: "foo" is not an object // код ES5 ['length', '0', '1', '2'] // код ES6 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -143,13 +143,13 @@ TypeError: "foo" is not an object // код ES5 </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div>{{Compat("javascript.builtins.Object.getOwnPropertyNames")}}</div> <p> </p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li><a href="/ru/docs/Enumerability_and_ownership_of_properties">Перечисляемость и собственность свойств</a></li> diff --git a/files/ru/web/javascript/reference/global_objects/object/getownpropertysymbols/index.html b/files/ru/web/javascript/reference/global_objects/object/getownpropertysymbols/index.html index 6b5c6f5c15..f71b1c7c40 100644 --- a/files/ru/web/javascript/reference/global_objects/object/getownpropertysymbols/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/getownpropertysymbols/index.html @@ -20,11 +20,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertySym <p>Исходный код этого интерактивного примера хранится в репозитории GitHub. Если вы хотите внести свой вклад в проект интерактивных примеров, пожалуйста, клонируйте <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> и отправьте нам запрос на извлечение.</p> </div> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="brush: js"><code>Object.getOwnPropertySymbols(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> @@ -35,13 +35,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertySym <p>Массив всех свойств символа, найденных прямо на данном объекте.</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Подобно методу {{jsxref("Object.getOwnPropertyNames()")}}, вы можете получить все символьные свойства указанного объекта в качестве массива символов. Обратите внимание, что метод {{jsxref("Object.getOwnPropertyNames()")}} сам не возвращает символьные свойства объекта, он возвращает только строковые свойства.</p> <p>Поскольку изначально никакой объект не содержит собственных символьных свойств, метод <code>Object.getOwnPropertySymbols()</code> будет возвращать пустой массив, пока вы не установите символьные свойства на вашем объекте.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">var obj = {}; var a = Symbol('a'); @@ -57,7 +57,7 @@ console.log(objectSymbols); // [Symbol(a), Symbol(b)] console.log(objectSymbols[0]); // Symbol(a) </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -74,7 +74,7 @@ console.log(objectSymbols[0]); // Symbol(a) </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p> </p> @@ -82,7 +82,7 @@ console.log(objectSymbols[0]); // Symbol(a) <div id="compat-desktop"> </div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.getOwnPropertyNames()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/getprototypeof/index.html b/files/ru/web/javascript/reference/global_objects/object/getprototypeof/index.html index 36f494a5f9..9bfeadebaa 100644 --- a/files/ru/web/javascript/reference/global_objects/object/getprototypeof/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/getprototypeof/index.html @@ -11,22 +11,22 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getPrototypeOf --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <strong><code>Object.getPrototypeOf()</code></strong> возвращает прототип (то есть, внутреннее свойство <code>[[Prototype]]</code>) указанного объекта.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.getPrototypeOf(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> <dd>Объект, чей прототип будет возвращён.</dd> </dl> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">var proto = {}; var obj = Object.create(proto); @@ -39,7 +39,7 @@ TypeError: "foo" is not an object // код ES5 String.prototype // код ES6 </pre> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5, если параметр <code>obj</code> не является объектом, будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES6, параметр будет приведён к объекту {{jsxref("Global_Objects/Object", "Object")}}.</p> @@ -49,7 +49,7 @@ TypeError: "foo" is not an object // код ES5 String.prototype // код ES6 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -71,15 +71,15 @@ String.prototype // код ES6 </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h3 id="Opera-specific_notes" name="Opera-specific_notes">Примечания по Opera</h3> +<h3 id="Opera-specific_notes">Примечания по Opera</h3> <p>Хотя старые версии Opera и не поддерживают метод <code>Object.getPrototypeOf()</code>, Opera поддерживает нестандартное свойство {{jsxref("Object.proto", "__proto__")}}, начиная с версии Opera 10.50.</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.isPrototypeOf()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/hasownproperty/index.html b/files/ru/web/javascript/reference/global_objects/object/hasownproperty/index.html index 152b8989c2..f8f61d0df6 100644 --- a/files/ru/web/javascript/reference/global_objects/object/hasownproperty/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/hasownproperty/index.html @@ -12,28 +12,28 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>hasOwnProperty()</strong></code> возвращает логическое значение, указывающее, содержит ли объект указанное свойство.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>obj</var>.hasOwnProperty(<var>prop</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>prop</code></dt> <dd>Имя проверяемого свойства.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Каждый объект, произошедший от {{jsxref("Global_Objects/Object", "Object")}}, наследует метод <code>hasOwnProperty</code>. Этот метод может использоваться для определения того, содержит ли объект указанное свойство в качестве собственного свойства объекта; в отличие от оператора {{jsxref("Operators/in", "in")}}, этот метод не проверяет существование свойств в цепочке прототипов объекта.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> -<h3 id="Example:_Using_hasOwnProperty_to_test_for_a_property.27s_existence" name="Example:_Using_hasOwnProperty_to_test_for_a_property.27s_existence">Пример: использование <code>hasOwnProperty</code> для проверки существования свойства</h3> +<h3 id="Example:_Using_hasOwnProperty_to_test_for_a_property.27s_existence">Пример: использование <code>hasOwnProperty</code> для проверки существования свойства</h3> <p>В следующем примере определяется, содержит ли объект <code>o</code> свойство с именем <code>prop</code>:</p> @@ -50,7 +50,7 @@ changeO(); o.hasOwnProperty('prop'); // вернёт false </pre> -<h3 id="Example:_Direct_versus_inherited_properties" name="Example:_Direct_versus_inherited_properties">Пример: собственные и унаследованные свойства</h3> +<h3 id="Example:_Direct_versus_inherited_properties">Пример: собственные и унаследованные свойства</h3> <p>Следующий пример показывает разницу между собственными свойствами и свойствами, унаследованными через цепочку прототипов:</p> @@ -61,7 +61,7 @@ o.hasOwnProperty('toString'); // вернёт false o.hasOwnProperty('hasOwnProperty'); // вернёт false </pre> -<h3 id="Example:_Itarate_over_properties_not_considering_inherited_properties" name="Example:_Itarate_over_properties_not_considering_inherited_properties">Пример: обход свойств объекта</h3> +<h3 id="Example:_Itarate_over_properties_not_considering_inherited_properties">Пример: обход свойств объекта</h3> <p>Следующий пример показывает, как итерироваться по свойствам объекта с пропуском унаследованных свойств. Обратите внимание, что цикл {{jsxref("Statements/for...in", "for...in")}} уже проходит только по перечисляемым элементам, так что не надо на основании отсутствия не перечисляемых свойств, показываемых в цикле, считать, что метод <code>hasOwnProperty</code> сам ограничивает свойства только перечисляемыми элементами (как это делает метод {{jsxref("Object.getOwnPropertyNames()")}}).</p> @@ -79,7 +79,7 @@ for (var name in buz) { } </pre> -<h3 id="Example:_hasOwnProperty_as_a_property" name="Example:_hasOwnProperty_as_a_property">Пример: <code>hasOwnProperty</code> как свойство</h3> +<h3 id="Example:_hasOwnProperty_as_a_property">Пример: <code>hasOwnProperty</code> как свойство</h3> <p>JavaScript не защищает имя свойства <code>hasOwnProperty</code>; таким образом, вполне может существовать объект с таким свойством, поэтому для получения правильного результата нужно использовать <em>внешний</em> метод <code>hasOwnProperty</code>:</p> @@ -101,7 +101,7 @@ Object.prototype.hasOwnProperty.call(foo, 'bar'); // true <p>Обратите внимание, что в последнем случае новые объекты не создаются.</p> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -128,13 +128,13 @@ Object.prototype.hasOwnProperty.call(foo, 'bar'); // true </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div> <p>{{Compat("javascript.builtins.Object.hasOwnProperty")}}</p> </div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li><a href="/ru/docs/Enumerability_and_ownership_of_properties">Перечисляемость и собственность свойств</a></li> diff --git a/files/ru/web/javascript/reference/global_objects/object/index.html b/files/ru/web/javascript/reference/global_objects/object/index.html index 298cf5255f..0889015eaf 100644 --- a/files/ru/web/javascript/reference/global_objects/object/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/index.html @@ -11,11 +11,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Конструктор <code><strong>Object</strong></code> создаёт объект-обёртку.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>// Инициализатор объекта или литерал { [ <var>nameValuePair1</var>[, <var>nameValuePair2</var>[, ...<var>nameValuePairN</var>] ] ] } @@ -24,7 +24,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object new Object([<var>value</var>]) </code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>nameValuePair1, nameValuePair2, ... nameValuePair<em>N</em></code></dt> @@ -33,7 +33,7 @@ new Object([<var>value</var>]) <dd>Любое значение.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Конструктор <code>Object</code> создаёт объект-обёртку для переданного значения. Если значением является {{jsxref("Global_Objects/null", "null")}} или {{jsxref("Global_Objects/undefined", "undefined")}}, создаёт и возвращает пустой объект, в противном случае возвращает объект такого типа, который соответствует переданному значению. Если значение уже является объектом, конструктор вернёт это значение.</p> @@ -41,7 +41,7 @@ new Object([<var>value</var>]) <p>Так же смотрите {{jsxref("Operators/Object_initializer", "синтаксис инициализатора объекта / литеральный синтаксис", "", 1)}}.</p> -<h2 id="Properties" name="Properties">Свойства конструктора <code>Object</code></h2> +<h2 id="Properties">Свойства конструктора <code>Object</code></h2> <dl> <dt><code>Object.length</code></dt> @@ -50,7 +50,7 @@ new Object([<var>value</var>]) <dd>Позволяет добавлять свойства ко всем объектам типа <code>Object</code>.</dd> </dl> -<h2 id="Methods" name="Methods">Методы конструктора <code>Object</code></h2> +<h2 id="Methods">Методы конструктора <code>Object</code></h2> <dl> <dt>{{jsxref("Object.assign()")}}</dt> @@ -91,21 +91,21 @@ new Object([<var>value</var>]) <dd>Устанавливает прототип (т.е. внутреннее свойство <code>[[Prototype]]</code>)</dd> </dl> -<h2 id="Object_instances" name="Object_instances">Экземпляры и прототип объекта <code>Object</code></h2> +<h2 id="Object_instances">Экземпляры и прототип объекта <code>Object</code></h2> <p>Все объекты в JavaScript являются потомками <code>Object</code>; все объекты наследуют методы и свойства из прототипа объекта {{jsxref("Object.prototype")}}, хотя они и могут быть переопределены. Например, прототипы других конструкторов переопределяют свойство <code>constructor</code> и предоставляют свои собственные методы <code>toString()</code>. Изменения в объекте прототипа <code>Object</code> распространяются на все объекты до тех пор, пока свойства и методы, учитывающие эти изменения, не переопределяются дальше по цепочке прототипов.</p> -<h3 id="Properties_of_Object_instances" name="Properties_of_Object_instances">Свойства</h3> +<h3 id="Properties_of_Object_instances">Свойства</h3> <div>{{page('/ru/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype', 'Properties')}}</div> -<h3 id="Methods_of_Object_instances" name="Methods_of_Object_instances">Методы</h3> +<h3 id="Methods_of_Object_instances">Методы</h3> <div>{{page('/ru/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype', 'Methods')}}</div> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> -<h3 id="Example.3A_Using_Object_given_undefined_and_null_types" name="Example.3A_Using_Object_given_undefined_and_null_types">Пример: использование <code>Object</code> с типами <code>undefined</code> и <code>null</code></h3> +<h3 id="Example.3A_Using_Object_given_undefined_and_null_types">Пример: использование <code>Object</code> с типами <code>undefined</code> и <code>null</code></h3> <p>Следующий пример сохраняет пустой объект <code>Object</code> в переменную <code>o</code>:</p> @@ -130,7 +130,7 @@ var o = new Object(true); var o = new Object(Boolean()); </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -157,11 +157,11 @@ var o = new Object(Boolean()); </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li><a href="/ru/docs/Web/JavaScript/Reference/Operators/Object_initializer">Инициализатор объекта</a></li> diff --git a/files/ru/web/javascript/reference/global_objects/object/is/index.html b/files/ru/web/javascript/reference/global_objects/object/is/index.html index c921d8a772..166b560d56 100644 --- a/files/ru/web/javascript/reference/global_objects/object/is/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/is/index.html @@ -12,15 +12,15 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/is --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>Object.is()</strong></code> определяет, являются ли два значения <a href="/ru/docs/Web/JavaScript/Guide/Sameness">одинаковыми значениями</a>.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>var <var>isSame</var> = Object.is(<var>value1</var>, <var>value2</var>);</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>value1</code></dt> @@ -29,7 +29,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/is <dd>Второе сравниваемое значение.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>Object.is()</code> определяет, являются ли два значения <a href="/ru/docs/Web/JavaScript/Guide/Sameness">одинаковыми значениями</a>. Два значения являются одинаковыми в следующих случаях:</p> @@ -53,7 +53,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/is <p>Поведение этого метода <em>не</em> аналогично оператору {{jsxref("Operators/Comparison_Operators", "===", "#Identity")}}. Оператор {{jsxref("Operators/Comparison_Operators", "===", "#Identity")}} (также как и оператор {{jsxref("Operators/Comparison_Operators", "==", "#Equality")}}) считает числовые значения <code>-0</code> и <code>+0</code> равными, а значение {{jsxref("Number.NaN")}} не равным самому себе.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">Object.is('foo', 'foo'); // true Object.is(window, window); // true @@ -72,7 +72,7 @@ Object.is(-0, -0); // true Object.is(NaN, 0/0); // true </pre> -<h2 id="Polyfill" name="Polyfill">Полифил</h2> +<h2 id="Polyfill">Полифил</h2> <p>Метод <code>Object.is</code> предложен в дополнение к стандарту ECMA-262; поэтому он может быть недоступен в некоторых браузерах. Это можно обойти, вставив приведённый ниже фрагмент кода в начало ваших скриптов. Он позволит вам использовать метод <code>Object.is</code> в случаях, когда он не имеет родной поддержки браузером.</p> @@ -89,7 +89,7 @@ Object.is(NaN, 0/0); // true }; }</code></pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -111,11 +111,11 @@ Object.is(NaN, 0/0); // true </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div>{{Compat("javascript.builtins.Object.is")}}</div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li><a href="/ru/docs/Web/JavaScript/Guide/Sameness">Руководство по JavaScript: одинаковость</a> — сравнение всех трёх встроенных способов проверки на одинаковость</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/isextensible/index.html b/files/ru/web/javascript/reference/global_objects/object/isextensible/index.html index 6c133d1ea7..5bc47ed782 100644 --- a/files/ru/web/javascript/reference/global_objects/object/isextensible/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/isextensible/index.html @@ -11,22 +11,22 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/isExtensible --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <strong><code>Object.isExtensible()</code></strong> определяет, является ли объект расширяемым (то есть, можно ли к нему добавлять новые свойства).</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.isExtensible(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> <dd>Проверяемый объект.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Объекты являются расширяемыми по умолчанию: к ним можно добавлять новые свойства и (в движках, поддерживающих свойство {{jsxref("Object.proto", "__proto__")}}) их можно изменять. Объект может быть помечен, как не изменяемый с помощью методов {{jsxref("Object.preventExtensions()")}}, {{jsxref("Object.seal()")}} или {{jsxref("Object.freeze()")}}.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">// Новые объекты являются расширяемыми. var empty = {}; assert(Object.isExtensible(empty) === true); @@ -44,7 +44,7 @@ var frozen = Object.freeze({}); assert(Object.isExtensible(frozen) === false); </pre> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5, если аргумент метода не является объектом (является примитивным значением), будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES6 такой аргумент будет рассматриваться, как простой не расширяемый объект и метод просто вернёт <code>false</code>.</p> <pre class="brush: js">> Object.isExtensible(1) TypeError: 1 is not an object // код ES5 @@ -53,7 +53,7 @@ TypeError: 1 is not an object // код ES5 false // код ES6 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> <tr> @@ -74,10 +74,10 @@ false // код ES6 </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.preventExtensions()")}}</li> <li>{{jsxref("Object.seal()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/isfrozen/index.html b/files/ru/web/javascript/reference/global_objects/object/isfrozen/index.html index 1970718f05..6ccafb579a 100644 --- a/files/ru/web/javascript/reference/global_objects/object/isfrozen/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/isfrozen/index.html @@ -11,26 +11,26 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/isFrozen --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>Object.isFrozen()</strong></code> определяет, был ли объект заморожен.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.isFrozen(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> <dd>Проверяемый объект.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Объект является замороженным только в том случае, если он не {{jsxref("Object.isExtensible()", "расширяем", "", 1)}}, все его свойства являются не настраиваемыми и все его свойства данных (то есть такие, которые не являются свойствами доступа с функциями сеттера или геттера) являются не записываемыми.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">// Новый объект является расширяемым, так что он не заморожен. assert(Object.isFrozen({}) === false); @@ -94,7 +94,7 @@ assert(Object.isExtensible(frozen) === false); assert(Object.isSealed(frozen) === true); </pre> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5, если аргумент метода не является объектом (является примитивным значением), будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES6 такой аргумент будет рассматриваться, как простой замороженный объект и метод просто вернёт <code>true</code>.</p> @@ -105,7 +105,7 @@ TypeError: 1 is not an object // код ES5 true // код ES6 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -127,11 +127,11 @@ true // код ES6 </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div>{{Compat("javascript.builtins.Object.isFrozen")}}</div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.freeze()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/isprototypeof/index.html b/files/ru/web/javascript/reference/global_objects/object/isprototypeof/index.html index 26672560d5..55c0ca9276 100644 --- a/files/ru/web/javascript/reference/global_objects/object/isprototypeof/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/isprototypeof/index.html @@ -11,7 +11,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/isPrototypeOf --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>isPrototypeOf()</strong></code> проверяет, входит ли объект в цепочку прототипов другого объекта.</p> @@ -19,11 +19,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/isPrototypeOf <p><strong>Обратите внимание:</strong> метод <code>isPrototypeOf()</code> отличается от оператора {{jsxref("Operators/instanceof", "instanceof")}}. Выражение "<code>object instanceof AFunction</code>" проверяет, присутствует ли в цепочке прототипов объекта <code>object</code> объект <code>AFunction.prototype</code>, а не сам объект <code>AFunction</code>.</p> </div> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>prototypeObj</var>.isPrototypeOf(<var>object</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>prototypeObj</code></dt> @@ -32,7 +32,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/isPrototypeOf <dd>Объект, в чьей цепочке прототипов производится поиск.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>isPrototypeOf()</code> позволяет вам проверять, существует ли объект в цепочке прототипов другого объекта.</p> @@ -70,7 +70,7 @@ if (Fi.prototype.isPrototypeOf(fum)) { <p>Таким образом, вместе с оператором {{jsxref("Operators/instanceof", "instanceof")}}, это особенно пригождается, если у вас есть код, который может работать только с объектами, имеющими определённую цепочку прототипов, к примеру, чтобы он мог гарантировать, что в объекте присутствуют определённые методы или свойства.</p> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -97,11 +97,11 @@ if (Fi.prototype.isPrototypeOf(fum)) { </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Operators/instanceof", "instanceof")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/issealed/index.html b/files/ru/web/javascript/reference/global_objects/object/issealed/index.html index 26884d3924..baf2d98dc8 100644 --- a/files/ru/web/javascript/reference/global_objects/object/issealed/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/issealed/index.html @@ -11,20 +11,20 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/isSealed --- <div> {{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>Object.isSealed()</strong></code> определяет, является ли объект запечатанным.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.isSealed(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt> <code>obj</code></dt> <dd> Проверяемый объект.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Возвращает <code>true</code>, если объект является запечатанным, иначе возвращает <code>false</code>. Объект является запечатанным, если он является не {{jsxref("Object.isExtensible", "расширяемым", "", 1)}} и если все его свойства являются не настраиваемыми и, следовательно, не удаляемыми (но не обязательно не записываемыми).</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">// По умолчанию объекты не запечатаны. var empty = {}; assert(Object.isSealed(empty) === false); @@ -59,7 +59,7 @@ assert(Object.isFrozen(s2) === false); // свойство 'p' всё ещё з var s3 = Object.seal({ get p() { return 0; } }); assert(Object.isFrozen(s3) === true); // для свойств доступа значение имеет только их настраиваемость </pre> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5, если аргумент метода не является объектом (является примитивным значением), будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES6 такой аргумент будет рассматриваться, как простой запечатанный объект и метод просто вернёт <code>true</code>.</p> <pre class="brush: js">> Object.isSealed(1) TypeError: 1 is not an object // код ES5 @@ -67,7 +67,7 @@ TypeError: 1 is not an object // код ES5 > Object.isSealed(1) true // код ES6 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> <tr> @@ -87,11 +87,11 @@ true // код ES6 </tr> </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.seal()")}}</li> <li>{{jsxref("Object.preventExtensions()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/keys/index.html b/files/ru/web/javascript/reference/global_objects/object/keys/index.html index 8ac8883ad2..70d338ebe4 100644 --- a/files/ru/web/javascript/reference/global_objects/object/keys/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/keys/index.html @@ -14,26 +14,26 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/keys --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>Object.keys()</strong></code> возвращает массив из собственных перечисляемых свойств переданного объекта, в том же порядке, в котором они бы обходились циклом {{jsxref("Statements/for...in", "for...in")}} (разница между циклом и методом в том, что цикл перечисляет свойства и из цепочки прототипов).</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.keys(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> <dd>Объект, чьи собственные перечисляемые свойства будут возвращены.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>Object.keys</code> возвращает массив строковых элементов, соответствующих именам перечисляемых свойств, найденных непосредственно в самом объекте. Порядок свойств такой же, как и при ручном перечислении свойств в объекте через цикл.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">var arr = ['a', 'b', 'c']; console.log(Object.keys(arr)); // консоль: ['0', '1', '2'] @@ -55,7 +55,7 @@ console.log(Object.keys(my_obj)); // консоль: ['foo'] <p>Если вы хотите увидеть все свойства, а не только перечисляемые, смотрите метод {{jsxref("Object.getOwnPropertyNames()")}}.</p> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5, если аргумент метода не является объектом (является примитивным значением), будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES2015 такой аргумент будет приведён к объекту.</p> @@ -66,7 +66,7 @@ TypeError: 'foo' is not an object // код ES5 ['0', '1', '2'] // код ES2015 </pre> -<h2 id="Polyfill" name="Polyfill">Полифил</h2> +<h2 id="Polyfill">Полифил</h2> <p>Для добавления поддержки совместимого метода <code>Object.keys</code> в старых окружениях, которые его ещё не реализуют, скопируйте следующий кусок кода:</p> @@ -117,7 +117,7 @@ if (!Object.keys) { <p>Более простой полифил может быть найден в статье <a href="http://tokenposts.blogspot.com.au/2012/04/javascript-objectkeys-browser.html">Javascript - Object.keys Browser Compatibility</a> (англ.).</p> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -139,11 +139,11 @@ if (!Object.keys) { </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat("javascript.builtins.Object.keys")}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li><a href="/ru/docs/Enumerability_and_ownership_of_properties">Перечисляемость и собственность свойств</a></li> diff --git a/files/ru/web/javascript/reference/global_objects/object/preventextensions/index.html b/files/ru/web/javascript/reference/global_objects/object/preventextensions/index.html index 6488f99506..5e909db99e 100644 --- a/files/ru/web/javascript/reference/global_objects/object/preventextensions/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/preventextensions/index.html @@ -15,11 +15,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/preventExtensions <p>{{EmbedInteractiveExample("pages/js/object-preventextensions.html")}}</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="brush: js"><code>Object.preventExtensions(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> @@ -30,7 +30,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/preventExtensions <p>Объект, который делается нерасширяемым.</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Объект называется расширяемым, если к нему могут быть добавлены новые свойства. <code>Object.preventExtensions()</code> помечает объект как нерасширяемый, так что он никогда не будет иметь других свойств, кроме тех, что были у него на момент пометки его нерасширяемым. Обратите внимание, что, в общем случае, свойства нерасширяемого объекта всё ещё могут быть <em>удалены</em>. Попытка добавить новые свойства к нерасширяемому объекту потерпит неудачу, либо молча, либо с выбрасыванием исключения {{jsxref("Global_Objects/TypeError", "TypeError")}} (как правило, но не обязательно, это происходит в {{jsxref("Functions_and_function_scope/Strict_mode", "строгом режиме", "", 1)}}).</p> @@ -38,7 +38,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/preventExtensions <p>Если превратить расширяемый объект в нерасширяемый возможно, в ECMAScript 5 нет никакого способа сделать обратную операцию.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">// Object.preventExtensions возвращает объект, который нужно сделать нерасширяемым. var obj = {}; @@ -72,7 +72,7 @@ var fixed = Object.preventExtensions({}); fixed.__proto__ = { oh: 'hai' }; // выбросит TypeError </pre> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5, если аргумент метода не является объектом (является примитивным значением), будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES6 такой аргумент будет рассматриваться как простой нерасширяемый объект и метод его просто вернёт.</p> @@ -83,7 +83,7 @@ TypeError: 1 is not an object // код ES5 1 // код ES6 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -105,11 +105,11 @@ TypeError: 1 is not an object // код ES5 </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div>{{Compat("javascript.builtins.Object.preventExtensions")}}</div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.isExtensible()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/propertyisenumerable/index.html b/files/ru/web/javascript/reference/global_objects/object/propertyisenumerable/index.html index ababc70c18..0dca10f65e 100644 --- a/files/ru/web/javascript/reference/global_objects/object/propertyisenumerable/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/propertyisenumerable/index.html @@ -11,24 +11,24 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/propertyIsEnumera --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>propertyIsEnumerable()</strong></code> возвращает логическое значение, указывающее, является ли указанное свойство перечисляемым.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>obj</var>.propertyIsEnumerable(<var>prop</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>prop</code></dt> <dd>Имя проверяемого свойства.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Каждый объект имеет метод <code>propertyIsEnumerable</code>. Этот метод может определять, является ли указанное свойство в объекте перечисляемым в цикле {{jsxref("Statements/for...in", "for...in")}}, за исключением свойств, унаследованных из цепочки прототипов. Если объект не имеет указанного свойства, метод вернёт <code>false</code>.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> -<h3 id="Example:_A_basic_use_of_propertyIsEnumerable" name="Example:_A_basic_use_of_propertyIsEnumerable">Пример: базовое использование <code>propertyIsEnumerable</code></h3> +<h3 id="Example:_A_basic_use_of_propertyIsEnumerable">Пример: базовое использование <code>propertyIsEnumerable</code></h3> <p>Следующий пример показывает использование метода <code>propertyIsEnumerable</code> на объектах и массивах:</p> <pre class="brush: js">var o = {}; var a = []; @@ -39,7 +39,7 @@ o.propertyIsEnumerable('prop'); // вернёт true a.propertyIsEnumerable(0); // вернёт true </pre> -<h3 id="Example:_User-defined_versus_built-in_objects" name="Example:_User-defined_versus_built-in_objects">Пример: определённые пользователем и встроенные объекты</h3> +<h3 id="Example:_User-defined_versus_built-in_objects">Пример: определённые пользователем и встроенные объекты</h3> <p>Следующий пример демонстрирует перечисляемость свойств, определённых пользователем и встроенных свойств:</p> <pre class="brush: js">var a = ['перечисляемое']; @@ -50,7 +50,7 @@ Math.propertyIsEnumerable('random'); // вернёт false this.propertyIsEnumerable('Math'); // вернёт false </pre> -<h3 id="Example:_Direct_versus_inherited_properties" name="Example:_Direct_versus_inherited_properties">Пример: собственные и унаследованные свойства</h3> +<h3 id="Example:_Direct_versus_inherited_properties">Пример: собственные и унаследованные свойства</h3> <pre class="brush: js">var a = []; a.propertyIsEnumerable('constructor'); // вернёт false @@ -86,7 +86,7 @@ o.propertyIsEnumerable('constructor'); // вернёт false o.propertyIsEnumerable('firstMethod'); // вернёт false </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> <tr> @@ -112,10 +112,10 @@ o.propertyIsEnumerable('firstMethod'); // вернёт false </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li><a href="/ru/docs/Enumerability_and_ownership_of_properties">Перечисляемость и собственность свойств</a></li> <li>{{jsxref("Statements/for...in", "for...in")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/proto/index.html b/files/ru/web/javascript/reference/global_objects/object/proto/index.html index 5d0cfb75dc..0d6219bd5c 100644 --- a/files/ru/web/javascript/reference/global_objects/object/proto/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/proto/index.html @@ -20,7 +20,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/proto <p><strong>Предупреждение:</strong> хотя на сегодняшний момент большинство браузеров поддерживают свойство <code>Object.prototype.__proto__</code>, его поведение только недавно было стандартизировано в новой спецификации ECMAScript 6. Если вам требуется поддержка браузеров до этой спецификации, рекомендуется использовать вместо него метод {{jsxref("Object.getPrototypeOf()")}}.</p> </div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Свойство <code>__proto__</code> объекта {{jsxref("Object.prototype")}} является свойством доступа (комбинацией геттера и сеттера), которое расширяет внутренний прототип <code>[[Prototype]]</code> объекта (являющийся объектом или {{jsxref("Global_Objects/null", "null")}}), через который осуществлялся доступ.</p> @@ -28,7 +28,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/proto <p>Свойство <code>__proto__</code> также может использоваться при определении литерала объекта, устанавливая прототип <code>[[Prototype]]</code> объекта при его создании. Этот способ может рассматриваться как альтернатива методу {{jsxref("Object.create()")}}. Смотрите также <a href="/ru/docs/Web/JavaScript/Reference/Operators/Object_initializer">литеральный синтаксис инициализации объекта</a>.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="brush: js">var shape = {}, circle = new Circle(); @@ -40,7 +40,7 @@ console.log(shape.__proto__ === circle); // true <p>Обратите внимание: название свойства состоит из двух подчёркиваний, следующих за ними пяти символов «proto» и следующих за ними ещё двух подчёркиваний.</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Геттер свойства <code>__proto__</code> расширяет значение внутреннего прототипа <code>[[Prototype]]</code> объекта. Для объектов, созданных с использованием литеральной формы создания объекта, это значение равно {{jsxref("Object.prototype")}}. Для функций это значение равно {{jsxref("Function.prototype")}}. Для объектов, созданных с использованием формы <code>new fun</code>, где <code>fun</code> является одной из встроенных функций-конструкторов, предоставляемых JavaScript ({{jsxref("Global_Objects/Array", "Array")}}, {{jsxref("Global_Objects/Boolean", "Boolean")}}, {{jsxref("Global_Objects/Date", "Date")}}, {{jsxref("Global_Objects/Number", "Number")}}, {{jsxref("Global_Objects/Object", "Object")}}, {{jsxref("Global_Objects/String", "String")}} и так далее — включая новые конструкторы, добавленные в процессе развития JavaScript), это значение равно <code>fun.prototype</code>. Для объектов, созданных с использованием формы <code>new fun</code>, где <code>fun</code> является функцией, определённой в скрипте, это значение равно значению <code>fun.prototype</code> во время вычисления <code>new fun</code>. Именно поэтому при присваивании <code>fun.prototype</code> нового значения, ранее созданные экземпляры <code>fun</code> продолжат использовать предыдущее значение в качестве своего прототипа <code>[[Prototype]]</code>, а последующие вызовы <code>new fun</code> будут использовать вновь присвоенное значение в качестве своего прототипа <code>[[Prototype]]</code>.</p> @@ -68,7 +68,7 @@ console.log(protoHidden.__proto__); // 42 console.log(Object.getPrototypeOf(protoHidden) === Object.prototype); // true </pre> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <p>В следующем примере создаётся новый экземпляр <code>Employee</code>, а затем проверяется, что его свойство <code>__proto__</code> является тем же самым объектом, что и его конструктор <code>prototype</code>.</p> @@ -117,7 +117,7 @@ b.hi(); <p>Если свойство <code>__proto__</code> объекта {{jsxref("Object.prototype")}} не установлено в {{jsxref("Global_Objects/null", "null")}}, или в другой объект, чья цепочка прототипов, в конечном итоге, явно не заканчивается значением {{jsxref("Global_Objects/null", "null")}}, будет выкинуто исключение {{jsxref("Global_Objects/TypeError", "TypeError")}} «циклическое значение __proto__», поскольку цепочка должна заканчиваться {{jsxref("Global_Objects/null", "null")}} (как это и происходит на {{jsxref("Object.prototype")}} при нормальных обстоятельствах).</p> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -134,7 +134,7 @@ b.hi(); </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div class="note"> <p><strong>Примечание:</strong> спецификация ES6 требует поддержку свойства <code>__proto__</code> только в браузерах и не требует его поддержку в других окружениях (хотя оно и рекомендуется в качестве обязательного). Если ваш код должен работать в не-браузерных окружениях, вместо свойства рекомендуется использовать методы {{jsxref("Object.getPrototypeOf()")}} и {{jsxref("Object.setPrototypeOf()")}}.</p> @@ -142,7 +142,7 @@ b.hi(); <div>{{Compat("javascript.builtins.Object.proto")}}</div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.isPrototypeOf()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/seal/index.html b/files/ru/web/javascript/reference/global_objects/object/seal/index.html index 0f21a25cfd..6004ddb068 100644 --- a/files/ru/web/javascript/reference/global_objects/object/seal/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/seal/index.html @@ -14,24 +14,24 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/seal <p>Метод <strong><code>Object.seal()</code></strong> запечатывает объект, предотвращая добавление новых свойств к объекту и делая все существующие свойства не настраиваемыми. Значения представленных свойств всё ещё могут изменяться, поскольку они остаются записываемыми.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.seal(<var>obj</var>)</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> <dd>Запечатываемый объект.</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>По умолчанию, объекты являются {{jsxref("Object.isExtensible()", "расширяемыми", "", 1)}} (к ним могут добавляться новые свойства). Запечатывание объекта предотвращает добавление к нему новых свойств и делает все существующие свойства не настраиваемыми. Оно делает все свойства объекта фиксированными и неизменными. Пометка всех свойств объекта как не настраиваемых также предотвращает их преобразование из свойств данных в свойства доступа и наоборот, но не предотвращает изменение значения свойств данных. Попытки удаления или добавления свойств к запечатанному объекту, либо преобразования свойств данных в свойства доступа и наоборот, будут терпеть неудачу, либо молча, либо с выбрасыванием исключения {{jsxref("Global_Objects/TypeError", "TypeError")}} (как правило, но не обязательно, это происходит в {{jsxref("Strict_mode", "строгом режиме", "", 1)}}).</p> <p>Цепочка прототипов не затрагивается. Однако, свойство {{jsxref("Object.proto", "__proto__")}} {{deprecated_inline}} также запечатываться.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">var obj = { prop: function() {}, @@ -71,7 +71,7 @@ Object.defineProperty(obj, 'ohai', { value: 17 }); // выбросит TypeError Object.defineProperty(obj, 'foo', { value: 'eit' }); // изменяем значение существующего свойства </pre> -<h2 id="Notes" name="Notes">Примечания</h2> +<h2 id="Notes">Примечания</h2> <p>В ES5, если аргумент метода не является объектом (является примитивным значением), будет выброшено исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}. В ES6 такой аргумент будет рассматриваться, как простой запечатанный объект и метод его просто вернёт.</p> @@ -82,7 +82,7 @@ TypeError: 1 is not an object // код ES5 1 // код ES6 </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -104,11 +104,11 @@ TypeError: 1 is not an object // код ES5 </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div>{{Compat("javascript.builtins.Object.seal")}}</div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.isSealed()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/setprototypeof/index.html b/files/ru/web/javascript/reference/global_objects/object/setprototypeof/index.html index 93aad25e02..ef8288b57e 100644 --- a/files/ru/web/javascript/reference/global_objects/object/setprototypeof/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/setprototypeof/index.html @@ -19,15 +19,15 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf <p><strong>Предупреждение:</strong> Изменение прототипа <code>[[Prototype]]</code> объекта является, по самой природе оптимизации доступа к свойствам в современных движках JavaScript, очень медленной операцией, это справедливо для <strong><em>любого</em></strong> браузера и движка JavaScript. Изменение прототипов очень тонко и обширно влияет на производительность, причём это влияние не ограничивается просто временем, проведённым внутри метода <code>Object.setPrototypeOf()</code>, оно может распространяться на <strong><em>любой</em></strong> код, который имеет доступ к <strong><em>любому</em></strong> объекту, чей прототип <code>[[Prototype]]</code> был изменён. Если вы заботитесь о производительности, вы никогда не должны изменять прототип <code>[[Prototype]]</code> объекта. Вместо этого создайте объект с нужным прототипом <code>[[Prototype]]</code>, с помощью метода {{jsxref("Object.create()")}}.</p> </div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <strong><code>Object.setPrototypeOf()</code></strong> устанавливает прототип (то есть, внутреннее свойство <code>[[Prototype]]</code>) указанного объекта в другой объект или {{jsxref("null")}}.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.setPrototypeOf(<var>obj</var>, <var>prototype</var>);</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <dl> <dt><code>obj</code></dt> @@ -36,16 +36,16 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf <dd>Новый прототип объекта (объект или {{jsxref("null")}}).</dd> </dl> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Выкидывает исключение {{jsxref("Global_Objects/TypeError", "TypeError")}}, если объект, чей прототип <code>[[Prototype]]</code> является не расширяемым, согласно методу {{jsxref("Object.isExtensible()")}}. Не делает ничего, если параметр <code>prototype</code> не является объектом или значением {{jsxref("null")}} (то есть, является числом, строкой, логическим значением или {{jsxref("undefined")}}). В противном случае метод устанавливает прототип <code>[[Prototype]]</code> объекта <code>obj</code> в новое значение.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> <pre class="brush: js">var dict = Object.setPrototypeOf({}, null); </pre> -<h2 id="Polyfill" name="Polyfill">Полифил</h2> +<h2 id="Polyfill">Полифил</h2> <p>Используя старое свойство {{jsxref("Object.proto", "Object.prototype.__proto__")}}, мы можем легко определить <code>Object.setPrototypeOf()</code>, если он ещё не доступен:</p> @@ -69,7 +69,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf <span class="punctuation token">}</span> <span class="punctuation token">}</span></code></pre> -<h2 id="Appending_Prototype_Chains" name="Appending_Prototype_Chains">Добавление цепочки прототипов</h2> +<h2 id="Appending_Prototype_Chains">Добавление цепочки прототипов</h2> <p>Сочетание метода <code>Object.getPrototypeOf()</code> и свойства {{jsxref("Object.proto", "Object.prototype.__proto__")}} позволяет добавить целую цепочку прототипов к новому прототипу объекта:</p> @@ -117,9 +117,9 @@ Object.appendChain = function(oChain, oProto) { } </pre> -<h3 id="Usage" name="Usage">Использование</h3> +<h3 id="Usage">Использование</h3> -<h4 id="First_example.3A_Appending_a_chain_to_a_prototype" name="First_example.3A_Appending_a_chain_to_a_prototype">Первый пример: присоединение цепочки к прототипу</h4> +<h4 id="First_example.3A_Appending_a_chain_to_a_prototype">Первый пример: присоединение цепочки к прототипу</h4> <pre class="brush: js">function Mammal() { this.isMammal = 'да'; @@ -145,7 +145,7 @@ Object.appendChain(oCat, new Animal()); alert(oCat.breathing); // 'да' </pre> -<h4 id="Second_example.3A_Transforming_a_primitive_value_into_an_instance_of_its_constructor_and_append_its_chain_to_a_prototype" name="Second_example.3A_Transforming_a_primitive_value_into_an_instance_of_its_constructor_and_append_its_chain_to_a_prototype">Второй пример: преобразование примитивного значения в экземпляр его конструктора и присоединение его цепочки к прототипу</h4> +<h4 id="Second_example.3A_Transforming_a_primitive_value_into_an_instance_of_its_constructor_and_append_its_chain_to_a_prototype">Второй пример: преобразование примитивного значения в экземпляр его конструктора и присоединение его цепочки к прототипу</h4> <pre class="brush: js">function Symbol() { this.isSymbol = 'да'; @@ -162,7 +162,7 @@ alert(oPrime.isSymbol); // 'да' alert(typeof oPrime); // 'object' </pre> -<h4 id="Third_example.3A_Appending_a_chain_to_the_Function.prototype_object_and_appending_a_new_function_to_that_chain" name="Third_example.3A_Appending_a_chain_to_the_Function.prototype_object_and_appending_a_new_function_to_that_chain">Третий пример: присоединение цепочки к объекту <code>Function.prototype</code> и новой функции к этой цепочке</h4> +<h4 id="Third_example.3A_Appending_a_chain_to_the_Function.prototype_object_and_appending_a_new_function_to_that_chain">Третий пример: присоединение цепочки к объекту <code>Function.prototype</code> и новой функции к этой цепочке</h4> <pre class="brush: js">function Person(sName) { this.identity = sName; @@ -175,7 +175,7 @@ alert(george.identity); // 'Георг' george(); // 'Привет, парни!!' </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -192,11 +192,11 @@ george(); // 'Привет, парни!!' </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.isPrototypeOf()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/tolocalestring/index.html b/files/ru/web/javascript/reference/global_objects/object/tolocalestring/index.html index f87dd7a89d..37a3d62dce 100644 --- a/files/ru/web/javascript/reference/global_objects/object/tolocalestring/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/tolocalestring/index.html @@ -10,20 +10,20 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/toLocaleString --- <div> {{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>toLocaleString()</strong></code> возвращает строку, представляющую объект. Этот метод предназначен для переопределения унаследованными объектами в целях поддержки зависимости от локали.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>obj</var>.toLocaleString();</code></pre> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>toLocaleString</code> объекта {{jsxref("Global_Objects/Object", "Object")}} возвращает результат вызова метода {{jsxref("Object.toString", "toString()")}}.</p> <p>Эта функция обеспечивает объектам обобщённый метод <code>toLocaleString</code>, хотя и не все объекты могут её использовать. Смотрите ниже список таких объектов.</p> -<h3 id="Objects_overriding_toLocaleString" name="Objects_overriding_toLocaleString">Объекты, переопределяющие <code>toLocaleString</code></h3> +<h3 id="Objects_overriding_toLocaleString">Объекты, переопределяющие <code>toLocaleString</code></h3> <ul> <li>{{jsxref("Global_Objects/Array", "Array")}}: {{jsxref("Array.prototype.toLocaleString()")}}</li> <li>{{jsxref("Global_Objects/Number", "Number")}}: {{jsxref("Number.prototype.toLocaleString()")}}</li> <li>{{jsxref("Global_Objects/Date", "Date")}}: {{jsxref("Date.prototype.toLocaleString()")}}</li> </ul> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> <tr> @@ -48,11 +48,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/toLocaleString </tr> </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.toString()")}}</li> </ul> diff --git a/files/ru/web/javascript/reference/global_objects/object/tosource/index.html b/files/ru/web/javascript/reference/global_objects/object/tosource/index.html index f8f8b51f9d..3213478bfa 100644 --- a/files/ru/web/javascript/reference/global_objects/object/tosource/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/tosource/index.html @@ -13,16 +13,16 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/toSource <p>Метод <strong><code>toSource()</code></strong> возвращает строку, представляющую исходный код объекта.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code>Object.toSource(); <var>obj</var>.toSource();</code></pre> -<h3 id="Parameters" name="Parameters">Параметры</h3> +<h3 id="Parameters">Параметры</h3> <p>Нет.</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Метод <code>toSource()</code> возвращает следующие значения:</p> @@ -39,7 +39,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/toSource <p>Вы можете вызывать метод <code>toSource()</code> во время отладки для просмотра содержимого объекта.</p> -<h3 id="Overriding_the_toSource_method" name="Overriding_the_toSource_method">Переопределение метода <code>toSource()</code></h3> +<h3 id="Overriding_the_toSource_method">Переопределение метода <code>toSource()</code></h3> <p>Вы можете безопасно переопределять метод <code>toSource()</code> для объектов. Например:</p> @@ -54,7 +54,7 @@ Person.prototype.toSource = function Person_toSource() { console.log(new Person('Joe').toSource()); // ---> new Person("Joe") </pre> -<h3 id="Built-in_toString_methods" name="Built-in_toString_methods">Встроенные методы <code>toSource()</code></h3> +<h3 id="Built-in_toString_methods">Встроенные методы <code>toSource()</code></h3> <p>Каждый тип ядра JavaScript имеет свой собственный метод <code>toSource()</code>. Вот эти объекты:</p> @@ -70,7 +70,7 @@ console.log(new Person('Joe').toSource()); // ---> new Person("Joe") <li><code>Math.toSource()</code> — возвращает строку "Math".</li> </ul> -<h3 id="Limitations_on_cyclical_objects" name="Limitations_on_cyclical_objects">Ограничение на циклические объекты</h3> +<h3 id="Limitations_on_cyclical_objects">Ограничение на циклические объекты</h3> <p>В том случае, если объекты содержат ссылки на самих себя, например циклический связанный список или дерево, которое можно обходить в обоих направлениях, метод <code>toSource()</code> не создаёт такие ссылки, начиная с Firefox 24. Например:</p> @@ -89,9 +89,9 @@ console.log('Циклическая ссылка: ' + (obj1.b.a == obj1)); <p>Если же вам позарез нужно использовать метод <code>toSource()</code> для циклической структуры, объект должен предоставить переопределённый метод <code>toSource()</code>, либо с помощью ссылки на конструктор, либо предоставив анонимную функцию.</p> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> -<h3 id="Example:_Using_toSource" name="Example:_Using_toSource">Пример: использование метода <code>toSource()</code></h3> +<h3 id="Example:_Using_toSource">Пример: использование метода <code>toSource()</code></h3> <p>Следующий код определяет тип объекта <code>Dog</code> и создаёт объект <code>theDog</code> типа <code>Dog</code>:</p> @@ -111,11 +111,11 @@ theDog = new Dog('Болтушка', 'лабрадор', 'шоколадный', // вернёт ({name:"Болтушка", breed:"лабрадор", color:"шоколадный", sex:"девочка"}) </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <p>Не является частью какого-либо стандарта. Реализована в JavaScript 1.3.</p> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p> </p> @@ -127,7 +127,7 @@ theDog = new Dog('Болтушка', 'лабрадор', 'шоколадный', <div id="compat-mobile"> </div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.toString()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/tostring/index.html b/files/ru/web/javascript/reference/global_objects/object/tostring/index.html index e9a1b0b116..23aa0c5db5 100644 --- a/files/ru/web/javascript/reference/global_objects/object/tostring/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/tostring/index.html @@ -14,7 +14,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/toString <p>{{EmbedInteractiveExample("pages/js/object-prototype-tostring.html")}}</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>obj</var>.toString()</code></pre> @@ -22,7 +22,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/toString <p>Строка, представляющая объект.</p> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>Каждый объект имеет метод <code>toString()</code>, автоматически вызывающийся, когда объект должен быть представлен в виде текстового значения или когда объект участвует в выражении, где ожидается строка. По умолчанию, метод <code>toString()</code> наследуется каждым объектом, произошедшим от объекта {{jsxref("Global_Objects/Object", "Object")}}. Если этот метод не переопределён в пользовательском объекте, <code>toString()</code> возвращает строку вида "[object <em>тип</em>]", где <code><em>тип</em></code> — это тип объекта. Это иллюстрирует следующий код:</p> @@ -34,9 +34,9 @@ o.toString(); // вернёт [object Object] <p><strong>Примечание:</strong> начиная с JavaScript 1.8.5, метод <code>toString()</code>, вызванный на {{jsxref("Global_Objects/null", "null")}}, возвращает строку <code>[object <em>Null</em>]</code>, а вызванный для {{jsxref("Global_Objects/undefined", "undefined")}}, возвращает строку <code>[object <em>Undefined</em>]</code>, как определено в 5-м издании ECMAScript и последующих исправлениях. Смотрите пример {{anch("Using_toString_to_detect_object_type", "использование метода toString() для определения типа объекта")}}.</p> </div> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> -<h3 id="Example_Overriding_the_default_toString_method" name="Example:_Overriding_the_default_toString_method">Пример: переопределение метода <code>toString</code> по умолчанию</h3> +<h3 id="Example_Overriding_the_default_toString_method">Пример: переопределение метода <code>toString</code> по умолчанию</h3> <p>Вы можете создать функцию, которая будет вызываться вместо метода <code>toString()</code> по умолчанию. Метод <code>toString()</code> не принимает аргументов и должен возвращать строку. Создаваемый вами метод <code>toString()</code> может возвращать любую строку, какую вы захотите, но он будет наиболее полезным, если будет возвращать информацию об объекте.</p> @@ -76,7 +76,7 @@ theDog = new Dog('Болтушка', 'лабрадор', 'шоколадный', <pre>Собачка Болтушка - девочка, шоколадный лабрадор </pre> -<h3 id="Example_Using_toString_to_detect_object_type" name="Example:_Using_toString_to_detect_object_type">Пример: использование метода <code>toString</code> для определения типа объекта</h3> +<h3 id="Example_Using_toString_to_detect_object_type">Пример: использование метода <code>toString</code> для определения типа объекта</h3> <p>Метод <code>toString()</code> можно использовать с любым объектом для получения его класса. Для использования метода <code>Object.prototype.toString()</code> с любым объектом, вам необходимо вызвать на нём функции {{jsxref("Function.prototype.call()")}} или {{jsxref("Function.prototype.apply()")}}, передав объект, который вы хотите исследовать, первым параметром <code>thisArg</code>.</p> @@ -91,7 +91,7 @@ toString.call(undefined); // [object Undefined] toString.call(null); // [object Null] </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -123,13 +123,13 @@ toString.call(null); // [object Null] </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <div></div> <div id="compat-mobile">{{Compat("javascript.builtins.Object.toString")}}</div> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.toSource()")}}</li> diff --git a/files/ru/web/javascript/reference/global_objects/object/valueof/index.html b/files/ru/web/javascript/reference/global_objects/object/valueof/index.html index 863353a31d..428af16b38 100644 --- a/files/ru/web/javascript/reference/global_objects/object/valueof/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/valueof/index.html @@ -10,15 +10,15 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/valueOf --- <div>{{JSRef("Global_Objects", "Object")}}</div> -<h2 id="Summary" name="Summary">Сводка</h2> +<h2 id="Summary">Сводка</h2> <p>Метод <code><strong>valueOf()</strong></code> возвращает примитивное значение указанного объекта.</p> -<h2 id="Syntax" name="Syntax">Синтаксис</h2> +<h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>object</var>.valueOf()</code></pre> -<h2 id="Description" name="Description">Описание</h2> +<h2 id="Description">Описание</h2> <p>JavaScript вызывает метод <code>valueOf</code> для преобразования объекта в примитивное значение. Вам редко потребуется вызывать метод <code>valueOf</code> самостоятельно; JavaScript автоматически вызывает его при обнаружении объекта, когда ожидается примитивное значение.</p> @@ -28,7 +28,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/valueOf <p>Вы можете использовать <code>valueOf</code> в своём коде для преобразования встроенных объектов в примитивное значение. Когда вы создаёте пользовательский объект, вы можете переопределить метод <code>Object.prototype.valueOf()</code>, чтобы вызывать собственный метод вместо метода по умолчанию из {{jsxref("Global_Objects/Object", "Object")}}.</p> -<h3 id="Overriding_valueOf_for_custom_objects" name="Overriding_valueOf_for_custom_objects">Переопределение <code>valueOf</code> в пользовательских объектах</h3> +<h3 id="Overriding_valueOf_for_custom_objects">Переопределение <code>valueOf</code> в пользовательских объектах</h3> <p>Вы можете создать функцию, вызываемую вместо метода <code>valueOf</code> по умолчанию. Ваша функция не должна принимать аргументов.</p> @@ -46,15 +46,15 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/valueOf <p><strong>Примечание:</strong> объекты в строковом контексте преобразуются с помощью метода {{jsxref("Object.toString", "toString()")}}, что отличается от объектов {{jsxref("Global_Objects/String", "String")}}, преобразующихся в строковые примитивы методом <code>valueOf</code>. Все объекты имеют преобразование в строку вида "<code>[object <em>type</em>]</code>". Но многие объекты не преобразуются в число, логическое значение или функцию.</p> </div> -<h2 id="Examples" name="Examples">Примеры</h2> +<h2 id="Examples">Примеры</h2> -<h3 id="Example:_Using_valueOf" name="Example:_Using_valueOf">Пример: использование <code>valueOf</code></h3> +<h3 id="Example:_Using_valueOf">Пример: использование <code>valueOf</code></h3> <pre class="brush: js">var o = new Object(); myVar = o.valueOf(); // [object Object] </pre> -<h2 id="Specifications" name="Specifications">Спецификации</h2> +<h2 id="Specifications">Спецификации</h2> <table class="standard-table"> <tbody> @@ -81,11 +81,11 @@ myVar = o.valueOf(); // [object Object] </tbody> </table> -<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2> +<h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> -<h2 id="See_also" name="See_also">Смотрите также</h2> +<h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Object.prototype.toString()")}}</li> |
