From 55ddd4454665a3c66e3d5b186bc79048468d36e7 Mon Sep 17 00:00:00 2001 From: Alexey Pyltsyn Date: Mon, 15 Mar 2021 14:29:50 +0300 Subject: Auto fixes --- files/ru/web/javascript/reference/classes/index.html | 2 +- .../reference/classes/private_class_fields/index.html | 2 +- .../reference/classes/public_class_fields/index.html | 4 ++-- .../web/javascript/reference/classes/static/index.html | 2 +- .../javascript/reference/errors/bad_octal/index.html | 2 +- .../reference/errors/bad_regexp_flag/index.html | 8 ++++---- .../index.html | 4 ++-- .../errors/deprecated_expression_closures/index.html | 2 +- .../reference/errors/deprecated_octal/index.html | 2 +- .../errors/deprecated_tolocaleformat/index.html | 2 +- .../errors/for-each-in_loops_are_deprecated/index.html | 8 ++++---- .../errors/identifier_after_number/index.html | 2 +- .../reference/errors/illegal_character/index.html | 6 +++--- files/ru/web/javascript/reference/errors/index.html | 4 ++-- .../errors/invalid_const_assignment/index.html | 2 +- .../errors/invalid_for-in_initializer/index.html | 2 +- .../reference/errors/malformed_uri/index.html | 2 +- .../missing_curly_after_property_list/index.html | 2 +- .../errors/missing_formal_parameter/index.html | 2 +- .../reference/errors/no_non-null_object/index.html | 2 +- .../javascript/reference/errors/not_defined/index.html | 2 +- .../index.html | 2 +- .../reference/errors/undeclared_var/index.html | 2 +- .../errors/unnamed_function_statement/index.html | 4 ++-- .../reference/functions/arguments/index.html | 4 ++-- .../reference/functions/arguments/length/index.html | 2 +- .../reference/functions/default_parameters/index.html | 4 ++-- files/ru/web/javascript/reference/functions/index.html | 12 ++++++------ .../reference/functions/method_definitions/index.html | 4 ++-- .../reference/functions/rest_parameters/index.html | 2 +- .../web/javascript/reference/functions/set/index.html | 4 ++-- .../global_objects/array/@@species/index.html | 6 +++--- .../global_objects/array/@@unscopables/index.html | 4 ++-- .../reference/global_objects/array/find/index.html | 2 +- .../global_objects/array/findindex/index.html | 4 ++-- .../reference/global_objects/array/flatmap/index.html | 6 +++--- .../reference/global_objects/array/index.html | 2 +- .../reference/global_objects/array/length/index.html | 2 +- .../reference/global_objects/array/reverse/index.html | 2 +- .../reference/global_objects/array/slice/index.html | 2 +- .../reference/global_objects/array/sort/index.html | 4 ++-- .../reference/global_objects/array/tostring/index.html | 2 +- .../global_objects/arraybuffer/isview/index.html | 2 +- .../reference/global_objects/atomics/add/index.html | 4 ++-- .../reference/global_objects/atomics/index.html | 10 +++++----- .../reference/global_objects/atomics/sub/index.html | 4 ++-- .../reference/global_objects/bigint/index.html | 6 +++--- .../reference/global_objects/date/index.html | 4 ++-- .../reference/global_objects/date/parse/index.html | 4 ++-- .../global_objects/date/setfullyear/index.html | 2 +- .../global_objects/date/todatestring/index.html | 2 +- .../reference/global_objects/date/tostring/index.html | 2 +- .../global_objects/date/totimestring/index.html | 2 +- .../global_objects/date/toutcstring/index.html | 2 +- .../global_objects/encodeuricomponent/index.html | 2 +- .../global_objects/error/columnnumber/index.html | 2 +- .../reference/global_objects/error/filename/index.html | 2 +- .../reference/global_objects/error/index.html | 6 +++--- .../global_objects/error/linenumber/index.html | 2 +- .../reference/global_objects/error/stack/index.html | 2 +- .../reference/global_objects/error/tosource/index.html | 2 +- .../reference/global_objects/escape/index.html | 2 +- .../reference/global_objects/eval/index.html | 6 +++--- .../reference/global_objects/evalerror/index.html | 4 ++-- .../reference/global_objects/float32array/index.html | 10 +++++----- .../reference/global_objects/function/apply/index.html | 2 +- .../global_objects/function/arguments/index.html | 2 +- .../reference/global_objects/function/bind/index.html | 2 +- .../reference/global_objects/function/index.html | 8 ++++---- .../reference/global_objects/function/name/index.html | 4 ++-- .../global_objects/function/tosource/index.html | 2 +- .../reference/global_objects/generator/index.html | 2 +- .../reference/global_objects/generator/next/index.html | 2 +- .../reference/global_objects/int32array/index.html | 8 ++++---- .../reference/global_objects/int8array/index.html | 4 ++-- .../reference/global_objects/intl/collator/index.html | 2 +- .../intl/datetimeformat/formattoparts/index.html | 6 +++--- .../global_objects/intl/datetimeformat/index.html | 2 +- .../global_objects/intl/getcanonicallocales/index.html | 4 ++-- .../reference/global_objects/intl/index.html | 16 ++++++++-------- .../global_objects/intl/listformat/index.html | 4 ++-- .../global_objects/intl/numberformat/index.html | 2 +- .../reference/global_objects/json/index.html | 2 +- .../reference/global_objects/json/parse/index.html | 2 +- .../reference/global_objects/map/delete/index.html | 6 +++--- .../reference/global_objects/map/entries/index.html | 2 +- .../javascript/reference/global_objects/map/index.html | 4 ++-- .../reference/global_objects/math/clz32/index.html | 4 ++-- .../reference/global_objects/math/index.html | 2 +- .../reference/global_objects/math/random/index.html | 4 ++-- .../reference/global_objects/number/index.html | 2 +- .../global_objects/number/negative_infinity/index.html | 2 +- .../global_objects/number/parseint/index.html | 2 +- .../global_objects/number/positive_infinity/index.html | 2 +- .../reference/global_objects/object/create/index.html | 2 +- .../global_objects/object/defineproperty/index.html | 2 +- .../reference/global_objects/object/entries/index.html | 4 ++-- .../global_objects/object/fromentries/index.html | 4 ++-- .../object/getownpropertydescriptors/index.html | 4 ++-- .../global_objects/object/getprototypeof/index.html | 2 +- .../global_objects/object/hasownproperty/index.html | 2 +- .../reference/global_objects/object/index.html | 4 ++-- .../reference/global_objects/object/proto/index.html | 2 +- .../reference/global_objects/object/seal/index.html | 2 +- .../reference/global_objects/object/values/index.html | 4 ++-- .../reference/global_objects/promise/all/index.html | 2 +- .../reference/global_objects/promise/any/index.html | 2 +- .../reference/global_objects/promise/catch/index.html | 6 +++--- .../global_objects/promise/finally/index.html | 2 +- .../reference/global_objects/promise/index.html | 2 +- .../reference/global_objects/promise/reject/index.html | 2 +- .../global_objects/promise/resolve/index.html | 10 +++++----- .../reference/global_objects/promise/then/index.html | 2 +- .../global_objects/proxy/proxy/apply/index.html | 2 +- .../global_objects/proxy/proxy/get/index.html | 2 +- .../global_objects/proxy/proxy/set/index.html | 4 ++-- .../reference/global_objects/reflect/apply/index.html | 2 +- .../global_objects/reflect/ownkeys/index.html | 2 +- .../global_objects/regexp/@@search/index.html | 4 ++-- .../reference/global_objects/regexp/@@split/index.html | 4 ++-- .../reference/global_objects/regexp/index.html | 12 ++++++------ .../reference/global_objects/regexp/input/index.html | 2 +- .../global_objects/regexp/lastmatch/index.html | 2 +- .../reference/global_objects/regexp/n/index.html | 6 +++--- .../reference/global_objects/regexp/unicode/index.html | 2 +- .../reference/global_objects/set/add/index.html | 2 +- .../reference/global_objects/set/values/index.html | 2 +- .../global_objects/sharedarraybuffer/index.html | 4 ++-- .../reference/global_objects/string/charat/index.html | 2 +- .../global_objects/string/codepointat/index.html | 2 +- .../global_objects/string/endswith/index.html | 2 +- .../global_objects/string/fontcolor/index.html | 2 +- .../reference/global_objects/string/index.html | 2 +- .../reference/global_objects/string/match/index.html | 2 +- .../reference/global_objects/string/padend/index.html | 2 +- .../reference/global_objects/string/replace/index.html | 6 +++--- .../global_objects/string/replaceall/index.html | 18 +++++++++--------- .../global_objects/string/startswith/index.html | 2 +- .../global_objects/string/substring/index.html | 2 +- .../global_objects/string/tosource/index.html | 2 +- .../global_objects/symbol/@@toprimitive/index.html | 4 ++-- .../reference/global_objects/symbol/index.html | 4 ++-- .../reference/global_objects/symbol/search/index.html | 2 +- .../global_objects/symbol/toprimitive/index.html | 2 +- .../global_objects/symbol/unscopables/index.html | 6 +++--- .../reference/global_objects/typedarray/index.html | 4 ++-- .../global_objects/typedarray/join/index.html | 4 ++-- .../reference/global_objects/typedarray/set/index.html | 2 +- .../global_objects/uint8clampedarray/index.html | 2 +- .../reference/global_objects/unescape/index.html | 6 +++--- .../reference/global_objects/weakmap/delete/index.html | 2 +- .../global_objects/webassembly/compile/index.html | 2 +- .../global_objects/webassembly/table/index.html | 10 +++++----- .../javascript/reference/lexical_grammar/index.html | 4 ++-- .../reference/operators/async_function/index.html | 2 +- .../reference/operators/bitwise_and/index.html | 6 +++--- .../javascript/reference/operators/class/index.html | 6 +++--- .../operators/conditional_operator/index.html | 2 +- .../javascript/reference/operators/function/index.html | 2 +- .../reference/operators/function_star_/index.html | 4 ++-- .../web/javascript/reference/operators/in/index.html | 2 +- files/ru/web/javascript/reference/operators/index.html | 4 ++-- .../reference/operators/instanceof/index.html | 4 ++-- .../web/javascript/reference/operators/new/index.html | 8 ++++---- .../reference/operators/object_initializer/index.html | 4 ++-- .../reference/operators/optional_chaining/index.html | 8 ++++---- .../reference/operators/property_accessors/index.html | 6 +++--- .../web/javascript/reference/operators/this/index.html | 4 ++-- .../javascript/reference/operators/typeof/index.html | 2 +- .../javascript/reference/operators/yield/index.html | 2 +- .../reference/operators/yield_star_/index.html | 4 ++-- .../reference/statements/async_function/index.html | 2 +- .../javascript/reference/statements/block/index.html | 2 +- .../javascript/reference/statements/class/index.html | 2 +- .../javascript/reference/statements/empty/index.html | 2 +- .../reference/statements/for...in/index.html | 2 +- .../reference/statements/for...of/index.html | 6 +++--- .../web/javascript/reference/statements/for/index.html | 4 ++-- .../reference/statements/function/index.html | 2 +- .../javascript/reference/statements/import/index.html | 8 ++++---- .../web/javascript/reference/statements/let/index.html | 10 +++++----- .../javascript/reference/statements/return/index.html | 4 ++-- .../reference/statements/try...catch/index.html | 6 +++--- .../web/javascript/reference/statements/var/index.html | 2 +- .../javascript/reference/statements/with/index.html | 2 +- .../ru/web/javascript/reference/strict_mode/index.html | 6 +++--- .../transitioning_to_strict_mode/index.html | 2 +- .../javascript/reference/trailing_commas/index.html | 8 ++++---- 188 files changed, 340 insertions(+), 340 deletions(-) (limited to 'files/ru/web/javascript/reference') diff --git a/files/ru/web/javascript/reference/classes/index.html b/files/ru/web/javascript/reference/classes/index.html index 883df1a1be..8711331ffc 100644 --- a/files/ru/web/javascript/reference/classes/index.html +++ b/files/ru/web/javascript/reference/classes/index.html @@ -194,7 +194,7 @@ Rectangle.prototype.prototypeWidth = 25;

Определение полей

-

Публичные и приватные поля - это экспериментальная особенность (stage 3), предложенная комитетом TC39 по стандартам языка Javascript. Поддержка баузерами ограничена, но это нововведение может быть использовано на моменте сборки, используя к примеру Babel.

+

Публичные и приватные поля - это экспериментальная особенность (stage 3), предложенная комитетом TC39 по стандартам языка Javascript. Поддержка браузерами ограничена, но это нововведение может быть использовано на моменте сборки, используя к примеру Babel.

Публичные поля

diff --git a/files/ru/web/javascript/reference/classes/private_class_fields/index.html b/files/ru/web/javascript/reference/classes/private_class_fields/index.html index 86d8220363..78a5d91787 100644 --- a/files/ru/web/javascript/reference/classes/private_class_fields/index.html +++ b/files/ru/web/javascript/reference/classes/private_class_fields/index.html @@ -72,7 +72,7 @@ console.assert(error instanceof TypeError)

Приватные поля экземпляров

-

Приватные поля экзмепляров объявляются #имя (произносится как "хэш нэймс"), которые идентифицируются префиксом #. # является частью имени, а также используется для объявления и доступа.

+

Приватные поля экземпляров объявляются #имя (произносится как "хэш нэймс"), которые идентифицируются префиксом #. # является частью имени, а также используется для объявления и доступа.

Инкапсуляция обеспечивается языком. Обращение к # именам вне области видимости является синтаксической ошибкой.

diff --git a/files/ru/web/javascript/reference/classes/public_class_fields/index.html b/files/ru/web/javascript/reference/classes/public_class_fields/index.html index c1aca8f166..ea67222e50 100644 --- a/files/ru/web/javascript/reference/classes/public_class_fields/index.html +++ b/files/ru/web/javascript/reference/classes/public_class_fields/index.html @@ -145,7 +145,7 @@ console.log(sub.subInstanceField);

The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.

-

Статические методы добавляются в конструктор класса с помощью Object.defineProperty во время его создания. Эти методы - изменяемые, неперечисляемые и настраеваемые свойства объекта.

+

Статические методы добавляются в конструктор класса с помощью Object.defineProperty во время его создания. Эти методы - изменяемые, неперечисляемые и настраиваемые свойства объекта.

Публичные методы экземпляра

@@ -192,7 +192,7 @@ console.log(instance.subPublicMethod()); // Ожидаемый вывод: "hello worl​d" -

Геттеры и сеттеры это специальные методы, которые привязаны к свойствам класса и которые вызываются, когда к свойсту обращаются или записывают. Используйте get и set для объявления публичных геттеров и сеттеров экземпляра.

+

Геттеры и сеттеры это специальные методы, которые привязаны к свойствам класса и которые вызываются, когда к свойству обращаются или записывают. Используйте get и set для объявления публичных геттеров и сеттеров экземпляра.

class ClassWithGetSet {
   #msg = 'hello world';
diff --git a/files/ru/web/javascript/reference/classes/static/index.html b/files/ru/web/javascript/reference/classes/static/index.html
index cec6516733..58ea5996c1 100644
--- a/files/ru/web/javascript/reference/classes/static/index.html
+++ b/files/ru/web/javascript/reference/classes/static/index.html
@@ -13,7 +13,7 @@ translation_of: Web/JavaScript/Reference/Classes/static
 
 

Описание

-

Cтатические методы вызываются через имя класса. Вызывать статические методы через имя объекта запрещено. Статические методы часто используются для создания вспомогательных функций приложения.

+

Статические методы вызываются через имя класса. Вызывать статические методы через имя объекта запрещено. Статические методы часто используются для создания вспомогательных функций приложения.

Вызов статических методов

diff --git a/files/ru/web/javascript/reference/errors/bad_octal/index.html b/files/ru/web/javascript/reference/errors/bad_octal/index.html index d36656c80e..34f25ffe7e 100644 --- a/files/ru/web/javascript/reference/errors/bad_octal/index.html +++ b/files/ru/web/javascript/reference/errors/bad_octal/index.html @@ -21,7 +21,7 @@ translation_of: Web/JavaScript/Reference/Errors/Bad_octal

Что пошло не так?

-

Десятеричные литералы могут начинаться с нуля (0), за которым следуют другие десятеричные цифры. Но, если все цифры после начального нуля (0) меньше 8, то число интерпретируется как восьмеричное. Т.к. 08 и 09 не соответствуют даному условию, JavaScript выводит предупреждение об этом.

+

Десятеричные литералы могут начинаться с нуля (0), за которым следуют другие десятеричные цифры. Но, если все цифры после начального нуля (0) меньше 8, то число интерпретируется как восьмеричное. Т.к. 08 и 09 не соответствуют данному условию, JavaScript выводит предупреждение об этом.

Следует отметить, что восьмеричные литералы и восьмеричные управляющие последовательности являются устаревшими и будут содержать дополнительное предупреждение об этом. С выпуском ECMAScript 6 версии в синтаксисе используется начальный нуль (0), за которым следует строчная или прописная Латинская буква "O" (0o или 0O)Дополнительную информацию смотрите на странице о  лексической грамматике.

diff --git a/files/ru/web/javascript/reference/errors/bad_regexp_flag/index.html b/files/ru/web/javascript/reference/errors/bad_regexp_flag/index.html index 6e3604af66..549b5ae654 100644 --- a/files/ru/web/javascript/reference/errors/bad_regexp_flag/index.html +++ b/files/ru/web/javascript/reference/errors/bad_regexp_flag/index.html @@ -17,7 +17,7 @@ SyntaxError: Invalid regular expression flags (Chrome)

Что пошло не так?

-

В коде есть недопустимые флаги регулярных выражений. Литерал в регулярном выражении, который содержит шаблон заключенный между двумя слэшами, флаги определяются после второго флага. Они также могут быть объявлены в конструкторе функции {{jsxref("RegExp")}} object (второй параметр). Флаги регулярного выражения могут быть использованы отдельно или вместе в любой очередности, но в ECMAScript их только пять.

+

В коде есть недопустимые флаги регулярных выражений. Литерал в регулярном выражении, который содержит шаблон заключенный между двумя слешами, флаги определяются после второго флага. Они также могут быть объявлены в конструкторе функции {{jsxref("RegExp")}} object (второй параметр). Флаги регулярного выражения могут быть использованы отдельно или вместе в любой очередности, но в ECMAScript их только пять.

Чтоб включить флаг в регулярное выражение, используйте синтаксис:

@@ -56,7 +56,7 @@ SyntaxError: Invalid regular expression flags (Chrome) y - Выполняет «липкий» поиск, который будет начинаться с текущей позиции в целевой строке. Cм. {{jsxref("RegExp.sticky", "sticky")}} + Выполняет «липкий» поиск, который будет начинаться с текущей позиции в целевой строке. См. {{jsxref("RegExp.sticky", "sticky")}} @@ -70,7 +70,7 @@ SyntaxError: Invalid regular expression flags (Chrome) // Ошибка синтаксиса: недействительный флаг "b" для регулярного выражения
-

Вы намеревались создать регулярное выражение? Выражение, содержащее два слэша, интерпретируется как литерал регулярного выражения.

+

Вы намеревались создать регулярное выражение? Выражение, содержащее два слеша, интерпретируется как литерал регулярного выражения.

let obj = {
   url: /docs/Web
@@ -87,7 +87,7 @@ SyntaxError: Invalid regular expression flags (Chrome)
 
 

Действительные флаги регулярного выражения 

-

Вгляните на таблицу выше, где представлены пять действительных флагов регулярного выражения, которые разрешены в JavaScript

+

Взгляните на таблицу выше, где представлены пять действительных флагов регулярного выражения, которые разрешены в JavaScript

/foo/g;
 /foo/gim;
diff --git a/files/ru/web/javascript/reference/errors/cant_define_property_object_not_extensible/index.html b/files/ru/web/javascript/reference/errors/cant_define_property_object_not_extensible/index.html
index 59499e302d..7e6acc3991 100644
--- a/files/ru/web/javascript/reference/errors/cant_define_property_object_not_extensible/index.html
+++ b/files/ru/web/javascript/reference/errors/cant_define_property_object_not_extensible/index.html
@@ -23,7 +23,7 @@ TypeError: Cannot define property: "x", object is not extensible. (Chrome)

Что произошло не так?

-

Обычно, объект расширяемый и к нему можно добавать новые свойства. Однако в этой ситуации {{jsxref("Object.preventExtensions()")}} сделал объект нерасширяемым, так что у него не может появиться других свойств, отличных от тех, которые были объявлены когда объект стал нерасширяемым.

+

Обычно, объект расширяемый и к нему можно добавить новые свойства. Однако в этой ситуации {{jsxref("Object.preventExtensions()")}} сделал объект нерасширяемым, так что у него не может появиться других свойств, отличных от тех, которые были объявлены когда объект стал нерасширяемым.

Примеры

@@ -38,7 +38,7 @@ obj.x = 'foo'; // TypeError: can't define property "x": "obj" is not extensible
-

В обеих, строгом и нестрогом режимах, вызов {{jsxref("Object.defineProperty()")}} вызывает исключнеие при добавлении нового свойства в нерасширяемый объект.

+

В обеих, строгом и нестрогом режимах, вызов {{jsxref("Object.defineProperty()")}} вызывает исключение при добавлении нового свойства в нерасширяемый объект.

var obj = { };
 Object.preventExtensions(obj);
diff --git a/files/ru/web/javascript/reference/errors/deprecated_expression_closures/index.html b/files/ru/web/javascript/reference/errors/deprecated_expression_closures/index.html
index 40dc8dc913..7e89e085df 100644
--- a/files/ru/web/javascript/reference/errors/deprecated_expression_closures/index.html
+++ b/files/ru/web/javascript/reference/errors/deprecated_expression_closures/index.html
@@ -23,7 +23,7 @@ translation_of: Web/JavaScript/Reference/Errors/Deprecated_expression_closures
 
 

Примеры

-

Неправильтный синтаксис

+

Неправильный синтаксис

Замыкания выражений пропускают фигурные скобки или операторы return из объявлений функций или определений методов в объектах.

diff --git a/files/ru/web/javascript/reference/errors/deprecated_octal/index.html b/files/ru/web/javascript/reference/errors/deprecated_octal/index.html index b397c5adb3..a6d35e2381 100644 --- a/files/ru/web/javascript/reference/errors/deprecated_octal/index.html +++ b/files/ru/web/javascript/reference/errors/deprecated_octal/index.html @@ -26,7 +26,7 @@ for octal literals use the "0o" prefix instead

Что пошло не так?

-

Восьмеричные литералы и восьмеричные escape-последовательности являются устаревшими и будут выдавать {{jsxref("SyntaxError")}} в строгом режиме. С ECMAScript2015 стандартным синтаксисом является использование ведующего нуля с последующеей заглавной или строчной латинской буквой "O" (0o bили 0O)

+

Восьмеричные литералы и восьмеричные escape-последовательности являются устаревшими и будут выдавать {{jsxref("SyntaxError")}} в строгом режиме. С ECMAScript2015 стандартным синтаксисом является использование ведущего нуля с последующей заглавной или строчной латинской буквой "O" (0o или 0O)

Примеры

diff --git a/files/ru/web/javascript/reference/errors/deprecated_tolocaleformat/index.html b/files/ru/web/javascript/reference/errors/deprecated_tolocaleformat/index.html index e5d4eb3d00..c90ca639e7 100644 --- a/files/ru/web/javascript/reference/errors/deprecated_tolocaleformat/index.html +++ b/files/ru/web/javascript/reference/errors/deprecated_tolocaleformat/index.html @@ -64,7 +64,7 @@ dates.forEach(date => console.log(dateFormatter.format(date))); // "Montag, 12. Mai 2014" -

Альтернативный стандартный ситнаксис с использованием Дата методов

+

Альтернативный стандартный синтаксис с использованием Дата методов

{{jsxref("Date")}} объект предлагает несколько методов для построения пользовательской строки даты.

diff --git a/files/ru/web/javascript/reference/errors/for-each-in_loops_are_deprecated/index.html b/files/ru/web/javascript/reference/errors/for-each-in_loops_are_deprecated/index.html index 861f44e1e9..d9a8f5ae2c 100644 --- a/files/ru/web/javascript/reference/errors/for-each-in_loops_are_deprecated/index.html +++ b/files/ru/web/javascript/reference/errors/for-each-in_loops_are_deprecated/index.html @@ -18,7 +18,7 @@ translation_of: Web/JavaScript/Reference/Errors/For-each-in_loops_are_deprecated

Примеры

-

Итерация обьекта

+

Итерация объекта

{{jsxref("Statements/for_each...in", "for each...in")}} используется для итерации по указанным значениям объектов.

@@ -87,7 +87,7 @@ for (var x of array) {

{{jsxref("Statements/for_each...in", "for each...in")}} ничего не делает, если указанное значение null или undefined, но {{jsxref("Statements/for...of", "for...of")}} выдаст исключение в этих случаях.

-

Непрвильный синтаксис

+

Неправильный синтаксис

function func(array) {
   for each (var x in array) {
@@ -121,7 +121,7 @@ func(undefined);       // prints nothing
 
 

Неправильный синтаксис

-

Существует устаревшая идиома для итерации по парам ключ-значение указанного объекта с помощью {{jsxref("Statements/for_each...in", "for each...in")}} и осужденный {{jsxref("Iterator")}} обьект.

+

Существует устаревшая идиома для итерации по парам ключ-значение указанного объекта с помощью {{jsxref("Statements/for_each...in", "for each...in")}} и осужденный {{jsxref("Iterator")}} объект.

var object = { a: 10, b: 20 };
 
@@ -131,7 +131,7 @@ for each (var [key, value] in Iterator(object)) {
 }
 
-

Альтернативный стандартный ситнтаксис

+

Альтернативный стандартный синтаксис

Теперь можно использовать стандартный цикл {{jsxref("Statements/for...in", "for...in")}} цикл для итерации по указанным ключам объекта и получения каждого значения внутри цикла:

diff --git a/files/ru/web/javascript/reference/errors/identifier_after_number/index.html b/files/ru/web/javascript/reference/errors/identifier_after_number/index.html index 9a0108616e..71cdda791f 100644 --- a/files/ru/web/javascript/reference/errors/identifier_after_number/index.html +++ b/files/ru/web/javascript/reference/errors/identifier_after_number/index.html @@ -44,7 +44,7 @@ alert(1.foo); // SyntaxError:  идентификатор начинается сразу после числового литерала
-

Вы можете переназвать вашу перемменную чтобы избежать ведущего числа.

+

Вы можете переназвать вашу переменную чтобы избежать ведущего числа.

var life1 = 'foo';
 var foo = life1;
diff --git a/files/ru/web/javascript/reference/errors/illegal_character/index.html b/files/ru/web/javascript/reference/errors/illegal_character/index.html
index 84a67e254f..5a88969177 100644
--- a/files/ru/web/javascript/reference/errors/illegal_character/index.html
+++ b/files/ru/web/javascript/reference/errors/illegal_character/index.html
@@ -17,13 +17,13 @@ SyntaxError: Invalid or unexpected token (Chrome)
 
 

Что пошло не так?

-

Присутсвует недопустимый или неожиданный знак, который не принадлежит данной позиции в коде. Используйте редактор, поддерживающий подсветку синтаксиса, и внимательно проверьте ваш код на предмет таких несовпадений, как знак минус ( - ) вместо тире  () или простые кавычки ( " ) вместо нестандратных знаков цитирования ().

+

Присутствует недопустимый или неожиданный знак, который не принадлежит данной позиции в коде. Используйте редактор, поддерживающий подсветку синтаксиса, и внимательно проверьте ваш код на предмет таких несовпадений, как знак минус ( - ) вместо тире  () или простые кавычки ( " ) вместо нестандартных знаков цитирования ().

Примеры

Несоответсвующие символы

-

Некоторые символы выглядят одинаково, но становтся причиной того, что анализатор не выполняет итерпретацию вашего кода.

+

Некоторые символы выглядят одинаково, но становится причиной того, что анализатор не выполняет интерпретацию вашего кода.

“This looks like a string”;
 // SyntaxError: illegal character
@@ -59,7 +59,7 @@ SyntaxError: Invalid or unexpected token (Chrome)
 // SyntaxError: illegal character
 
-

Если проверить этот код в редакторе вроде Vim, вы можете увидеть, что в коде присутсвтует символ, именуемый нулевой пробел (zero-width space (ZWSP) (U+200B)).

+

Если проверить этот код в редакторе вроде Vim, вы можете увидеть, что в коде присутствует символ, именуемый нулевой пробел (zero-width space (ZWSP) (U+200B)).

var foo = 'bar';​<200b>
diff --git a/files/ru/web/javascript/reference/errors/index.html b/files/ru/web/javascript/reference/errors/index.html index 08f8f1c808..21d076dbdc 100644 --- a/files/ru/web/javascript/reference/errors/index.html +++ b/files/ru/web/javascript/reference/errors/index.html @@ -8,13 +8,13 @@ translation_of: Web/JavaScript/Reference/Errors ---

{{jsSidebar("Errors")}}

-

Ниже, Вы найдете список ошибок, которые возвращает JavaScript. Эти ошибки могут буть полезны при отладке, но неполадки не всегда сразу понятны. Страницы ниже  предлагают дополнительную информацию об этих ошибках. Каждая ошибка это Объект на основании {{jsxref("Error")}} object, и имеет имя (name) и сообщение (message).

+

Ниже, Вы найдете список ошибок, которые возвращает JavaScript. Эти ошибки могут быть полезны при отладке, но неполадки не всегда сразу понятны. Страницы ниже  предлагают дополнительную информацию об этих ошибках. Каждая ошибка это Объект на основании {{jsxref("Error")}} object, и имеет имя (name) и сообщение (message).

Ошибки отображенные в Web консоли могут содержать ссылку на соответствующую страницу ниже, чтобы помочь вам быстро понять проблему в коде.

Список ошибок

-

В представленном списке, каждая страница проименована (тип ошибки) и сообщение (более подробное удобочитаемое сообщение об ошибке). Вместе, эти два свойства послужат отправной точкой к пониманию и устранению ошибки. Для большей информации, перейдите по ссылкам ниже!

+

В представленном списке, каждая страница переименована (тип ошибки) и сообщение (более подробное удобочитаемое сообщение об ошибке). Вместе, эти два свойства послужат отправной точкой к пониманию и устранению ошибки. Для большей информации, перейдите по ссылкам ниже!

{{ListSubPages("/ru/docs/Web/JavaScript/Reference/Errors")}}

diff --git a/files/ru/web/javascript/reference/errors/invalid_const_assignment/index.html b/files/ru/web/javascript/reference/errors/invalid_const_assignment/index.html index eaf8b0b185..54bbb51f92 100644 --- a/files/ru/web/javascript/reference/errors/invalid_const_assignment/index.html +++ b/files/ru/web/javascript/reference/errors/invalid_const_assignment/index.html @@ -37,7 +37,7 @@ COLUMNS = 120; // TypeError: invalid assignment to const `COLUMNS'

Есть несколько вариантов, чтобы исправить эту ошибку. Проверьте, что должно было быть достигнуто с рассматриваемой константой.

-

Переназавите

+

Переназовите

Если вы хотели объявить другую константу, выберите другое имя и переименовать. Это имя константы уже используется в этой области.

diff --git a/files/ru/web/javascript/reference/errors/invalid_for-in_initializer/index.html b/files/ru/web/javascript/reference/errors/invalid_for-in_initializer/index.html index 4538cd6b0b..f9e91b0a53 100644 --- a/files/ru/web/javascript/reference/errors/invalid_for-in_initializer/index.html +++ b/files/ru/web/javascript/reference/errors/invalid_for-in_initializer/index.html @@ -20,7 +20,7 @@ SyntaxError: объявление переменной цикла for-in мож

{{jsxref("SyntaxError")}} только в строгом режиме.

-

Что пошло нетак?

+

Что пошло не так?

Глава цикла for...in содержит выражение инициализатора. То есть переменная объявляется и присваивается значение |for (var i = 0 in obj)|. В нестрогом режиме это объявление head игнорируется и ведет себя как |for (var i in obj)|. Однако в строгом режиме создается синтаксическая ошибка.

diff --git a/files/ru/web/javascript/reference/errors/malformed_uri/index.html b/files/ru/web/javascript/reference/errors/malformed_uri/index.html index 8f57f277f4..460c0a3a3d 100644 --- a/files/ru/web/javascript/reference/errors/malformed_uri/index.html +++ b/files/ru/web/javascript/reference/errors/malformed_uri/index.html @@ -39,7 +39,7 @@ encodeURI('\uDFFF');

Декодирование

-

Декодирование заменяет каждую управляющую последовательность в закодированном URI компоненте символом, который она предстваляет. Если такого символа нет, возникнет ошибка:

+

Декодирование заменяет каждую управляющую последовательность в закодированном URI компоненте символом, который она представляет. Если такого символа нет, возникнет ошибка:

decodeURIComponent('%E0%A4%A');
 // "URIError: malformed URI sequence"
diff --git a/files/ru/web/javascript/reference/errors/missing_curly_after_property_list/index.html b/files/ru/web/javascript/reference/errors/missing_curly_after_property_list/index.html
index 0c60c44dc9..d1a9834174 100644
--- a/files/ru/web/javascript/reference/errors/missing_curly_after_property_list/index.html
+++ b/files/ru/web/javascript/reference/errors/missing_curly_after_property_list/index.html
@@ -20,7 +20,7 @@ translation_of: Web/JavaScript/Reference/Errors/Missing_curly_after_property_lis
 
 

Что пошло не так?

-

Произошла ошибка в синтаксисе инициализатора объекта. Причиной может быть отсутствующая фигурная скобка или, к примеру, недостающая запятая. Также проверьте, в правильном ли порядке расположены закрывающие круглые и фигурные скобки. Добаление отступов или форматирование кода в более благоприятный вид также могут помочь разобраться в беспорядке.

+

Произошла ошибка в синтаксисе инициализатора объекта. Причиной может быть отсутствующая фигурная скобка или, к примеру, недостающая запятая. Также проверьте, в правильном ли порядке расположены закрывающие круглые и фигурные скобки. Добавление отступов или форматирование кода в более благоприятный вид также могут помочь разобраться в беспорядке.

Примеры

diff --git a/files/ru/web/javascript/reference/errors/missing_formal_parameter/index.html b/files/ru/web/javascript/reference/errors/missing_formal_parameter/index.html index a47a45477a..b3b0aae107 100644 --- a/files/ru/web/javascript/reference/errors/missing_formal_parameter/index.html +++ b/files/ru/web/javascript/reference/errors/missing_formal_parameter/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Errors/Missing_formal_parameter ---
{{jsSidebar("Errors")}}
-

Сообщениe

+

Сообщение

SyntaxError: идентификатор начинается сразу после числового литерала
 
diff --git a/files/ru/web/javascript/reference/errors/no_non-null_object/index.html b/files/ru/web/javascript/reference/errors/no_non-null_object/index.html index c00c5ff571..1aa1260c59 100644 --- a/files/ru/web/javascript/reference/errors/no_non-null_object/index.html +++ b/files/ru/web/javascript/reference/errors/no_non-null_object/index.html @@ -50,7 +50,7 @@ Object.defineProperty({}, 'key', null); ws.add('foo'); // TypeError: "foo" is not a non-null object
-

Создание обьекта вместо:

+

Создание объекта вместо:

ws.add({foo: 'bar'});
 ws.add(window);
diff --git a/files/ru/web/javascript/reference/errors/not_defined/index.html b/files/ru/web/javascript/reference/errors/not_defined/index.html
index 039044b94c..818c3c00d4 100644
--- a/files/ru/web/javascript/reference/errors/not_defined/index.html
+++ b/files/ru/web/javascript/reference/errors/not_defined/index.html
@@ -19,7 +19,7 @@ translation_of: Web/JavaScript/Reference/Errors/Not_defined
 

Есть несуществующая переменная, которая ссылается куда-то. Эта переменная должна быть объявлена, или вам необходимо убедиться, что она доступна в вашем текущем скрипте или области исходного кода ( {{Glossary("scope")}}).

-

Заметка: При использовании стороних библиотек (такие как jQuery), убедитесь, что они загружаются до того, как вы используете переменные "$". Поместите тег {{HTMLElement("script")}} загружающий вашу библиотеку до того как вы будете использовать ее.

+

Заметка: При использовании сторонних библиотек (такие как jQuery), убедитесь, что они загружаются до того, как вы используете переменные "$". Поместите тег {{HTMLElement("script")}} загружающий вашу библиотеку до того как вы будете использовать ее.

Примеры

diff --git a/files/ru/web/javascript/reference/errors/reduce_of_empty_array_with_no_initial_value/index.html b/files/ru/web/javascript/reference/errors/reduce_of_empty_array_with_no_initial_value/index.html index ef0179a7ca..012d203930 100644 --- a/files/ru/web/javascript/reference/errors/reduce_of_empty_array_with_no_initial_value/index.html +++ b/files/ru/web/javascript/reference/errors/reduce_of_empty_array_with_no_initial_value/index.html @@ -18,7 +18,7 @@ translation_of: Web/JavaScript/Reference/Errors/Reduce_of_empty_array_with_no_in

Что пошло не так?

-

В JavaScript существует несколько уменьщающих функций :

+

В JavaScript существует несколько уменьшающих функций :

-

Тип ошбки

+

Тип ошибки

{{jsxref("ReferenceError")}} предупреждение только в строгом режиме.

diff --git a/files/ru/web/javascript/reference/errors/unnamed_function_statement/index.html b/files/ru/web/javascript/reference/errors/unnamed_function_statement/index.html index 791a215d11..0554d0d93c 100644 --- a/files/ru/web/javascript/reference/errors/unnamed_function_statement/index.html +++ b/files/ru/web/javascript/reference/errors/unnamed_function_statement/index.html @@ -32,7 +32,7 @@ SyntaxError: непредвиденный токен ( [Chrome] // SyntaxError: function statement requires a name -

Вы можете использовать выражение функции (назначять) вместо:

+

Вы можете использовать выражение функции (назначат) вместо:

var greet = function() {
   return 'Hello world';
@@ -64,7 +64,7 @@ SyntaxError: непредвиденный токен ( [Chrome]
   }
 }
-

Методы обьекта

+

Методы объекта

Если вы намеревались создать метод объекта, вам нужно будет создать объект. Тогда допустим следующий синтаксис без имени после ключевого слова function.

diff --git a/files/ru/web/javascript/reference/functions/arguments/index.html b/files/ru/web/javascript/reference/functions/arguments/index.html index 13ef8edd8d..b23710eba0 100644 --- a/files/ru/web/javascript/reference/functions/arguments/index.html +++ b/files/ru/web/javascript/reference/functions/arguments/index.html @@ -76,7 +76,7 @@ console.log(typeof arguments[0]);

Использование оператора расширения для объекта arguments

-

Как и с обычными массиво-подобными объектами, для преобразования объекта arguments в обычный массив можно использовать метод {{jsxref("Array.from()")}} или оператор расширения:

+

Как и с обычными массива-подобными объектами, для преобразования объекта arguments в обычный массив можно использовать метод {{jsxref("Array.from()")}} или оператор расширения:

var args = Array.from(arguments);
 var args = [...arguments];
@@ -201,7 +201,7 @@ myConcat(". ", "sage", "basil", "oregano", "pepper", "parsley"); Спецификация Статус - Коментарии + Комментарии {{SpecName('ES1')}} diff --git a/files/ru/web/javascript/reference/functions/arguments/length/index.html b/files/ru/web/javascript/reference/functions/arguments/length/index.html index 4411d266e5..e2a3272570 100644 --- a/files/ru/web/javascript/reference/functions/arguments/length/index.html +++ b/files/ru/web/javascript/reference/functions/arguments/length/index.html @@ -13,7 +13,7 @@ translation_of: Web/JavaScript/Reference/Functions/arguments/length

Описание

-

arguments.length свойство содержашее число аргументов переданных в функцию. Оно может быть больше или меньше опреденного параметра count (см. {{jsxref("Function.length")}}).

+

arguments.length свойство содержащее число аргументов переданных в функцию. Оно может быть больше или меньше опряденного параметра count (см. {{jsxref("Function.length")}}).

Примеры

diff --git a/files/ru/web/javascript/reference/functions/default_parameters/index.html b/files/ru/web/javascript/reference/functions/default_parameters/index.html index 2e6568b816..ec1cd22fc2 100644 --- a/files/ru/web/javascript/reference/functions/default_parameters/index.html +++ b/files/ru/web/javascript/reference/functions/default_parameters/index.html @@ -108,7 +108,7 @@ callSomething(); // 2

Параметры по умолчанию доступны в следующих параметрах по умолчанию

-

В параметрах по умолчанию можно использовать значения предыдущих (расположеннных левее в списке) параметров:

+

В параметрах по умолчанию можно использовать значения предыдущих (расположенных левее в списке) параметров:

function greet(name, greeting, message = greeting + ' ' + name) {
     return [name, greeting, message];
@@ -117,7 +117,7 @@ callSomething(); // 2
 greet('David', 'Hi');  // ["David", "Hi", "Hi David"]
 greet('David', 'Hi', 'Happy Birthday!');  // ["David", "Hi", "Happy Birthday!"]
-

Следующий пример пример еще раз иллюстирует эту возможность, а также позволяет еще раз сравнить два способа достижения одного и того же результата: с использованием инициализации параметров по умолчанию и без ее использования:

+

Следующий пример пример еще раз иллюстрирует эту возможность, а также позволяет еще раз сравнить два способа достижения одного и того же результата: с использованием инициализации параметров по умолчанию и без ее использования:

function go() {
   return ":P"
diff --git a/files/ru/web/javascript/reference/functions/index.html b/files/ru/web/javascript/reference/functions/index.html
index 0353eb3b84..51ce19a0f4 100644
--- a/files/ru/web/javascript/reference/functions/index.html
+++ b/files/ru/web/javascript/reference/functions/index.html
@@ -10,9 +10,9 @@ translation_of: Web/JavaScript/Reference/Functions
 
 

Сводка

-

В общем случае, функция — это "подпрограмма", которую можно вызывать из внешнего (или внутренного, в случае рекурсии) по отношению к функции кода. Как и сама программа, функция состоит из последовательности инструкций, называемой телом функции. Значения могут быть переданы в функцию, а функция вернёт значение.

+

В общем случае, функция — это "подпрограмма", которую можно вызывать из внешнего (или внутреннего, в случае рекурсии) по отношению к функции кода. Как и сама программа, функция состоит из последовательности инструкций, называемой телом функции. Значения могут быть переданы в функцию, а функция вернёт значение.

-

В JavaScript функции являются объектами первого класса, то есть: они являются объектами и с ними можно взаимодействовать и передавать их точно так же как любой другой объект. Если быть точным, функции — это обьекты Function.

+

В JavaScript функции являются объектами первого класса, то есть: они являются объектами и с ними можно взаимодействовать и передавать их точно так же как любой другой объект. Если быть точным, функции — это объекты Function.

Больше подробностей и примеров можно найти в руководстве по функциям в JavaScript.

@@ -159,7 +159,7 @@ param => expression

Параметры по умолчанию

-

Параметры функции по умолчанию позволяют инициалазировать формальные параметры со значениями по умолчанию, если им не было передано значение, или было передано undefined. Подробнее о них можно узнать в статье Параметры по умолчанию.

+

Параметры функции по умолчанию позволяют инициализировать формальные параметры со значениями по умолчанию, если им не было передано значение, или было передано undefined. Подробнее о них можно узнать в статье Параметры по умолчанию.

Оставшиеся параметры

@@ -195,7 +195,7 @@ param => expression

Примечание: Определение методов — это экспериментальная технология, часть спецификации ECMAScript 6, и она пока ещё не получила широкой поддержки среди браузеров.

-

Начиная с ECMAScript 6, можно определять собственные методы, использу более краткий синтаксис, похожий на геттеры и сеттеры. Более подробно  — в статье Определение методов.

+

Начиная с ECMAScript 6, можно определять собственные методы, используют более краткий синтаксис, похожий на геттеры и сеттеры. Более подробно  — в статье Определение методов.

var obj = {
   foo() {},
@@ -241,7 +241,7 @@ param => expression
 alert(x); // выкинет ошибку
 
-

Также имя фукнции-выражения проявляется, если сериализовать функцию через метод Function.toString.

+

Также имя функции-выражения проявляется, если сериализовать функцию через метод Function.toString.

А вот переменная, к которой функция приравнена, ограничена только собственной областью видимости, которая включает ту область, где функция была объявлена.

@@ -274,7 +274,7 @@ function foo() {

Функция, определённая через функцию-выражение, наследует текущую область видимости, то есть создаёт замыкание. А вот функция, созданная с помощью конструктора Function, не наследует ничего, кроме глобальной области видимости (её наследуют вообще все функции).

-

Функции, определённые через функцию-выражение и объявление функции парсятся только один раз, в отличиии от функций, созданных с помощью конструктора. То есть строка, которая передаётся в конструктор Function, парсится при каждом вызове конструктора. И хотя функция-выражение каждый раз создаёт замыкание, тело функции при этом не парсится, и получается, что функции-выражение всё равно быстрее, чем "new Function(...)". Поэтому конструктора Function в большинстве случаев стоит избегать, если это возможно.

+

Функции, определённые через функцию-выражение и объявление функции парсятся только один раз, в отличии от функций, созданных с помощью конструктора. То есть строка, которая передаётся в конструктор Function, парсится при каждом вызове конструктора. И хотя функция-выражение каждый раз создаёт замыкание, тело функции при этом не парсится, и получается, что функции-выражение всё равно быстрее, чем "new Function(...)". Поэтому конструктора Function в большинстве случаев стоит избегать, если это возможно.

Стоит отметить, что функции-выражения и объявления функций внутри функции, созданной при парсинге конструктора Function, парсятся только один раз. Например:

diff --git a/files/ru/web/javascript/reference/functions/method_definitions/index.html b/files/ru/web/javascript/reference/functions/method_definitions/index.html index e758926921..2a7f130d76 100644 --- a/files/ru/web/javascript/reference/functions/method_definitions/index.html +++ b/files/ru/web/javascript/reference/functions/method_definitions/index.html @@ -2,7 +2,7 @@ title: Определение методов slug: Web/JavaScript/Reference/Functions/Method_definitions translation_of: Web/JavaScript/Reference/Functions/Method_definitions -original_slug: Web/JavaScript/Reference/Functions/Определиние_методов +original_slug: Web/JavaScript/Reference/Functions/Определение_методов ---
{{JsSidebar("Functions")}}
@@ -20,7 +20,7 @@ original_slug: Web/JavaScript/Reference/Functions/Определиние_мет

Описание

-

Короткий синтаксис похожий на синтаксис getter'ов и setter'ов представленых в ECMAScript 5.

+

Короткий синтаксис похожий на синтаксис getter'ов и setter'ов представленных в ECMAScript 5.

Следующий код:

diff --git a/files/ru/web/javascript/reference/functions/rest_parameters/index.html b/files/ru/web/javascript/reference/functions/rest_parameters/index.html index 14d9c1e334..14229ded17 100644 --- a/files/ru/web/javascript/reference/functions/rest_parameters/index.html +++ b/files/ru/web/javascript/reference/functions/rest_parameters/index.html @@ -76,7 +76,7 @@ function f(...args) {

Деструктуризация оставшихся параметров

-

Оставшиеся парамерты могут быть деструктуризованы (только массивы). Это означает, что их данные могут быть заданы как отдельные значения. Смотрите Деструктурирующее присваивание.

+

Оставшиеся параметры могут быть деструктурированы (только массивы). Это означает, что их данные могут быть заданы как отдельные значения. Смотрите Деструктурирующее присваивание.

function f(...[a, b, c]) {
   return a + b + c;
diff --git a/files/ru/web/javascript/reference/functions/set/index.html b/files/ru/web/javascript/reference/functions/set/index.html
index 8d51101997..97b89211c1 100644
--- a/files/ru/web/javascript/reference/functions/set/index.html
+++ b/files/ru/web/javascript/reference/functions/set/index.html
@@ -108,7 +108,7 @@ console.log(obj.baz); // "baz"
   
    {{SpecName('ES6', '#sec-method-definitions', 'Method definitions')}}
    {{Spec2('ES6')}}
-   Добавлены вычесляемые имена свойств
+   Добавлены вычисляемые имена свойств
   
   
    {{SpecName('ESDraft', '#sec-method-definitions', 'Method definitions')}}
@@ -130,5 +130,5 @@ console.log(obj.baz); // "baz"
  
  • {{jsxref("Object.defineProperty()")}}
  • {{jsxref("Object.defineGetter", "__defineGetter__")}}
  • {{jsxref("Object.defineSetter", "__defineSetter__")}}
  • -
  • Defining Getters and Setters в реководстве по JavaScript
  • +
  • Defining Getters and Setters в руководстве по JavaScript
  • diff --git a/files/ru/web/javascript/reference/global_objects/array/@@species/index.html b/files/ru/web/javascript/reference/global_objects/array/@@species/index.html index 696d2b6312..118cfd4197 100644 --- a/files/ru/web/javascript/reference/global_objects/array/@@species/index.html +++ b/files/ru/web/javascript/reference/global_objects/array/@@species/index.html @@ -23,16 +23,16 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/@@species

    Описание

    -

    Метод species  возвращает стандартный конструктор обьектов Array . Дочерние элементы могут переопределить метод для смены назначения конструктора.

    +

    Метод species  возвращает стандартный конструктор объектов Array . Дочерние элементы могут переопределить метод для смены назначения конструктора.

    Примеры

    Метод species возвращает стандартное значение функции конструктора, то есть
    -  Array конструктор для Array обьектов:

    +  Array конструктор для Array объектов:

    Array[Symbol.species]; // функция Array()
    -

    В полученном обьекте (на примере обычного массива MyArray),  MyArray является конструктором MyArray. В случае, если вы захотите вернуть родительские обьекты Array в полученных классовых методах, вы можете переопределить метод:

    +

    В полученном объекте (на примере обычного массива MyArray),  MyArray является конструктором MyArray. В случае, если вы захотите вернуть родительские объекты Array в полученных классовых методах, вы можете переопределить метод:

    class MyArray extends Array {
       //  Переписывает тип MyArray в родительский конструктор Array
    diff --git a/files/ru/web/javascript/reference/global_objects/array/@@unscopables/index.html b/files/ru/web/javascript/reference/global_objects/array/@@unscopables/index.html
    index 7e4e7c9daa..7637d1d3f5 100644
    --- a/files/ru/web/javascript/reference/global_objects/array/@@unscopables/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/array/@@unscopables/index.html
    @@ -27,7 +27,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/@@unscopables
     
     

    Примеры

    -

    Приведённый код отлично работает в ES5 и ниже. Однако в ECMAScript 2015 и более поздних версиях был введён метод  {{jsxref("Array.prototype.keys()")}}. Это означает, что внутри окружения with, "ключи" будут методом, а не пременной. Вот где теперь встроенные свойства символа {{jsxref("Array.prototype[@@unscopables]")}} вступают в игру и препятствуют тому, чтобы некоторые из методов Array были включены в оператор with.

    +

    Приведённый код отлично работает в ES5 и ниже. Однако в ECMAScript 2015 и более поздних версиях был введён метод  {{jsxref("Array.prototype.keys()")}}. Это означает, что внутри окружения with, "ключи" будут методом, а не переменной. Вот где теперь встроенные свойства символа {{jsxref("Array.prototype[@@unscopables]")}} вступают в игру и препятствуют тому, чтобы некоторые из методов Array были включены в оператор with.

    var keys = [];
     
    @@ -64,7 +64,7 @@ Object.keys(Array.prototype[Symbol.unscopables]);
     

    Совместимость с браузерами

    - +

    {{Compat("javascript.builtins.Array.@@unscopables")}}

    diff --git a/files/ru/web/javascript/reference/global_objects/array/find/index.html b/files/ru/web/javascript/reference/global_objects/array/find/index.html index 938282aa1d..ceef78d17d 100644 --- a/files/ru/web/javascript/reference/global_objects/array/find/index.html +++ b/files/ru/web/javascript/reference/global_objects/array/find/index.html @@ -60,7 +60,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/find

    Метод find не изменяет массив, для которого он был вызван.

    -

    Диапазон элементов, обрабатываемых методом find, устанавливается до первого вызова функции callback. Элементы, добавленные в массив после начала выполнения метода find, не будут посещены функцией callback. Если существующие, непосещённые элементы массива изменяются функцией callback, их значения, переданные в функцию, будут значениями на тот момент времени когда метод find посетит их; удалённые элементы все еще будут посещены. 

    +

    Диапазон элементов, обрабатываемых методом find, устанавливается до первого вызова функции callback. Элементы, добавленные в массив после начала выполнения метода find, не будут посещены функцией callback. Если существующие, непосещение элементы массива изменяются функцией callback, их значения, переданные в функцию, будут значениями на тот момент времени когда метод find посетит их; удалённые элементы все еще будут посещены. 

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/array/findindex/index.html b/files/ru/web/javascript/reference/global_objects/array/findindex/index.html index 8806a9f5db..dad15bf9d0 100644 --- a/files/ru/web/javascript/reference/global_objects/array/findindex/index.html +++ b/files/ru/web/javascript/reference/global_objects/array/findindex/index.html @@ -30,7 +30,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/findIndex
    callback
    -
    Функция, вызывающаяся для каждого значения в масиве, принимает три аргумента: +
    Функция, вызывающаяся для каждого значения в массиве, принимает три аргумента:
    element
    Текущий обрабатываемый элемент в массиве.
    @@ -54,7 +54,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/findIndex

    Метод findIndex не изменяет массив, для которого он был вызван.

    -

    Диапазон элементов, обрабатываемых методом findIndex, устанавливается до первого вызова функции callback. Элементы, добавленные в массив после начала выполнения метода findIndex, не будут посещены функцией callback. Если существующие, непосещённые элементы массива изменяются функцией callback, их значения, переданные в функцию, будут значениями на тот момент времени, когда метод findIndex посетит их; удалённые элементы посещены не будут.

    +

    Диапазон элементов, обрабатываемых методом findIndex, устанавливается до первого вызова функции callback. Элементы, добавленные в массив после начала выполнения метода findIndex, не будут посещены функцией callback. Если существующие, непосещение элементы массива изменяются функцией callback, их значения, переданные в функцию, будут значениями на тот момент времени, когда метод findIndex посетит их; удалённые элементы посещены не будут.

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/array/flatmap/index.html b/files/ru/web/javascript/reference/global_objects/array/flatmap/index.html index 4465a92711..21eba44b70 100644 --- a/files/ru/web/javascript/reference/global_objects/array/flatmap/index.html +++ b/files/ru/web/javascript/reference/global_objects/array/flatmap/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/flatMap ---
    {{JSRef}}
    -

    Метод flatMap() сначала применяет функцию к каждому элементу, а затем преобразует полученый результат в плоскую структуру и помещает в новый массив. Это идентично map функции, с последующим применением функции flat с параметром depth ( глубина ) равным 1, но flatMap часто бывает полезным, так как работает немного более эффективно.

    +

    Метод flatMap() сначала применяет функцию к каждому элементу, а затем преобразует полученный результат в плоскую структуру и помещает в новый массив. Это идентично map функции, с последующим применением функции flat с параметром depth ( глубина ) равным 1, но flatMap часто бывает полезным, так как работает немного более эффективно.

    @@ -61,7 +61,7 @@ arr1.flatMap(x => [[x * 2]]); // [[2], [4], [6], [8]]
    -

    Хотя результат полученый в примере выше можно было получить используя просто map, ниже мы рассмотрим пример где flatMap является более эффективным.

    +

    Хотя результат полученный в примере выше можно было получить используя просто map, ниже мы рассмотрим пример где flatMap является более эффективным.

    Давайте сгенерируем список слов из списка предложений.

    @@ -111,7 +111,7 @@ arr1.reduce((acc, x) => acc.concat([x * 2]Поддержка браузерами
    - +

    {{Compat("javascript.builtins.Array.flatMap")}}

    diff --git a/files/ru/web/javascript/reference/global_objects/array/index.html b/files/ru/web/javascript/reference/global_objects/array/index.html index 5dcbcdc1e8..0f085cb30c 100644 --- a/files/ru/web/javascript/reference/global_objects/array/index.html +++ b/files/ru/web/javascript/reference/global_objects/array/index.html @@ -289,7 +289,7 @@ var myArray = myRe.exec('cdbBdbsbz');

    Общие методы массива

    -

    Иногда хочется применить методы массива к строкам или другим массивоподобным объектам (например, к {{jsxref("Functions_and_function_scope/arguments", "аргументам", "", 1)}} функции). Делая это, вы трактуете строку как массив символов (другими словами, рассматриваете не-массив в качестве массива). Например, в порядке проверки каждого символа в переменной str на то, что он является буквой (латинского алфавита), вы пишете следущий код:

    +

    Иногда хочется применить методы массива к строкам или другим массивоподобным объектам (например, к {{jsxref("Functions_and_function_scope/arguments", "аргументам", "", 1)}} функции). Делая это, вы трактуете строку как массив символов (другими словами, рассматриваете не-массив в качестве массива). Например, в порядке проверки каждого символа в переменной str на то, что он является буквой (латинского алфавита), вы пишете следующий код:

    function isLetter(character) {
       return character >= 'a' && character <= 'z';
    diff --git a/files/ru/web/javascript/reference/global_objects/array/length/index.html b/files/ru/web/javascript/reference/global_objects/array/length/index.html
    index 402e1005a4..bdfee4574e 100644
    --- a/files/ru/web/javascript/reference/global_objects/array/length/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/array/length/index.html
    @@ -11,7 +11,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/length
     
     

    Сводка

    -

    Cвойство length объекта, который является экземпляром типа Array , устанавливает или возвращает число элементов этого массива. Значение данного свойства 32-битное безнаковое целое число, которое всегда численно больше чем самый наибольший индекс в массиве.

    +

    Свойство length объекта, который является экземпляром типа Array , устанавливает или возвращает число элементов этого массива. Значение данного свойства 32-битное безнаковое целое число, которое всегда численно больше чем самый наибольший индекс в массиве.

    var items = ['shoes', 'shirts', 'socks', 'sweaters'];
     items.length;
    diff --git a/files/ru/web/javascript/reference/global_objects/array/reverse/index.html b/files/ru/web/javascript/reference/global_objects/array/reverse/index.html
    index 15bb946242..811d7adea9 100644
    --- a/files/ru/web/javascript/reference/global_objects/array/reverse/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/array/reverse/index.html
    @@ -28,7 +28,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/reverse
     
     

    Возвращаемое значение

    -

    Перевернутный массив

    +

    Перевернутый массив

    Описание

    diff --git a/files/ru/web/javascript/reference/global_objects/array/slice/index.html b/files/ru/web/javascript/reference/global_objects/array/slice/index.html index 1b35c36e24..d3b197f00b 100644 --- a/files/ru/web/javascript/reference/global_objects/array/slice/index.html +++ b/files/ru/web/javascript/reference/global_objects/array/slice/index.html @@ -28,7 +28,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/slice
    begin {{optional_inline}}
    Индекс (счёт начинается с нуля), по которому начинать извлечение.
    Если индекс отрицательный, begin указывает смещение от конца последовательности. Вызов slice(-2) извлечёт два последних элемента последовательности.
    -
    Если begin неопределен, slice() начинает работать с индекса 0.
    +
    Если begin не определен, slice() начинает работать с индекса 0.
    Если begin больше длины последовательности вернется пустой массив.
    end {{optional_inline}}
    Индекс (счёт начинается с нуля), по которому заканчивать извлечение. Метод slice() извлекает элементы с индексом меньше end.
    diff --git a/files/ru/web/javascript/reference/global_objects/array/sort/index.html b/files/ru/web/javascript/reference/global_objects/array/sort/index.html index 06769275e6..16b73503c5 100644 --- a/files/ru/web/javascript/reference/global_objects/array/sort/index.html +++ b/files/ru/web/javascript/reference/global_objects/array/sort/index.html @@ -12,7 +12,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/sort

    Сводка

    -

    Метод sort() на месте сортирует элементы массива и возвращает отсортированный массив. Сортировка не обязательно устойчива (англ.). Порядок cортировки по умолчанию соответствует порядку кодовых точек Unicode.

    +

    Метод sort() на месте сортирует элементы массива и возвращает отсортированный массив. Сортировка не обязательно устойчива (англ.). Порядок сортировки по умолчанию соответствует порядку кодовых точек Unicode.

    Синтаксис

    @@ -110,7 +110,7 @@ items.sort(function (a, b) {

    Пример: создание, отображение и сортировка массива

    -

    В следующем примере создаётся четыре массива, сначала отображается первоначальный массив, а затем они сортируются. Числовые масивы сортируются сначала без, а потом с функцией сравнения.

    +

    В следующем примере создаётся четыре массива, сначала отображается первоначальный массив, а затем они сортируются. Числовые массивы сортируются сначала без, а потом с функцией сравнения.

    var stringArray = ['Голубая', 'Горбатая', 'Белуга'];
     var numericStringArray = ['80', '9', '700'];
    diff --git a/files/ru/web/javascript/reference/global_objects/array/tostring/index.html b/files/ru/web/javascript/reference/global_objects/array/tostring/index.html
    index f2877df269..85fc20e80a 100644
    --- a/files/ru/web/javascript/reference/global_objects/array/tostring/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/array/tostring/index.html
    @@ -34,7 +34,7 @@ var myVar = monthNames.toString(); // присваивает 'Янв,Фев,Ма
     
     

    Семантика ECMAScript 5

    -

    Начиная с JavaScript 1.8.5 (Firefox 4), и в соответствии с сементикой ECMAScript 5-го издания, метод toString() является обобщённым и может использоваться с любым объектом. В случае с массивами, если он имеет метод join(), он будет вызван и результат его работы будет возвращён. В противном случае будет вызван метод {{jsxref("Object.prototype.toString()")}}, и будет возвращён результат его работы.

    +

    Начиная с JavaScript 1.8.5 (Firefox 4), и в соответствии с семантикой ECMAScript 5-го издания, метод toString() является обобщённым и может использоваться с любым объектом. В случае с массивами, если он имеет метод join(), он будет вызван и результат его работы будет возвращён. В противном случае будет вызван метод {{jsxref("Object.prototype.toString()")}}, и будет возвращён результат его работы.

    Спецификации

    diff --git a/files/ru/web/javascript/reference/global_objects/arraybuffer/isview/index.html b/files/ru/web/javascript/reference/global_objects/arraybuffer/isview/index.html index 22971e53cd..2c03f395f7 100644 --- a/files/ru/web/javascript/reference/global_objects/arraybuffer/isview/index.html +++ b/files/ru/web/javascript/reference/global_objects/arraybuffer/isview/index.html @@ -65,7 +65,7 @@ ArrayBuffer.isView(dv); // true {{SpecName('ES2015', '#sec-arraybuffer.isview', 'ArrayBuffer.isView')}} {{Spec2('ES2015')}} - Изначальное определене в стандарте ECMA. + Изначальное определение в стандарте ECMA. {{SpecName('ESDraft', '#sec-arraybuffer.isview', 'ArrayBuffer.isView')}} diff --git a/files/ru/web/javascript/reference/global_objects/atomics/add/index.html b/files/ru/web/javascript/reference/global_objects/atomics/add/index.html index a426517362..546fdbd27f 100644 --- a/files/ru/web/javascript/reference/global_objects/atomics/add/index.html +++ b/files/ru/web/javascript/reference/global_objects/atomics/add/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Atomics/add ---
    {{JSRef}}
    -

    Статический метод Atomics.add() добавляет значение к текущему по указанной позиции в массиве и возвращает предыдущее значение в этой позиции. Эта атомарная опреация гарантирует, что никакой другой записи не произойдет, пока измененное значение не будет записано обратно.

    +

    Статический метод Atomics.add() добавляет значение к текущему по указанной позиции в массиве и возвращает предыдущее значение в этой позиции. Эта атомарная операция гарантирует, что никакой другой записи не произойдет, пока измененное значение не будет записано обратно.

    Синтаксис

    @@ -30,7 +30,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Atomics/add

    Исключения

      -
    • Выбрасывает {{jsxref("TypeError")}}, если тип typedArray не является одним из допустимых тцелочисленных типов.
    • +
    • Выбрасывает {{jsxref("TypeError")}}, если тип typedArray не является одним из допустимых целочисленных типов.
    • Выбрасывает {{jsxref("TypeError")}}, если тип typedArray не общего типа.
    • Выбрасывает {{jsxref("RangeError")}}, если index вне typedArray.
    diff --git a/files/ru/web/javascript/reference/global_objects/atomics/index.html b/files/ru/web/javascript/reference/global_objects/atomics/index.html index 73e8181682..d51c14af2e 100644 --- a/files/ru/web/javascript/reference/global_objects/atomics/index.html +++ b/files/ru/web/javascript/reference/global_objects/atomics/index.html @@ -37,7 +37,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Atomics
    {{jsxref("Atomics.load()")}}
    -
    Возвращает значение из указаной позиции массива.
    +
    Возвращает значение из указанной позиции массива.
    {{jsxref("Atomics.or()")}}
    Вычисляет побитовое OR в указанной позиции массива. Возвращает предыдущее значение в этой позиции.
    {{jsxref("Atomics.store()")}}
    @@ -55,13 +55,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Atomics
    {{jsxref("Atomics.wait()")}}
    -

    Проверяет, содержится в указанной позиции массива все еще представленное значение и спит в ожидании или тайм-аут. Возвращает "ok", "not-equal" или "timed-out". Если ожидание не разрешено в вызывающем агенете, тогда выбросит ошибку исключения (большинство браузеров не разрешают wait() в главном потоке барузера).

    +

    Проверяет, содержится в указанной позиции массива все еще представленное значение и спит в ожидании или тайм-аут. Возвращает "ok", "not-equal" или "timed-out". Если ожидание не разрешено в вызывающем агенте, тогда выбросит ошибку исключения (большинство браузеров не разрешают wait() в главном потоке браузера).

    {{jsxref("Atomics.wake()")}}
    Пробуждает некоторых агентов, которые спят в очереди ожидания в указанной позиции массива. Возвращает количество агентов, которые были разбужены.
    {{jsxref("Atomics.isLockFree()", "Atomics.isLockFree(size)")}}
    -

    Оптимизационный примитив, который может быть использован для определения использовать ли блокирующие операции или атомарные. Возвращает true, если атомарные операции над массивaми с указанным размерами элеменатов будут выполнены с использованием аппаратных атомарных опреаций (как противоположность блокирующим). Только для специалистов.

    +

    Оптимизационный примитив, который может быть использован для определения использовать ли блокирующие операции или атомарные. Возвращает true, если атомарные операции над массивами с указанным размерами элементов будут выполнены с использованием аппаратных атомарных операций (как противоположность блокирующим). Только для специалистов.

    @@ -145,11 +145,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Atomics

    Похожие заметки

    -

    До SpiderMonkey 48 {{geckoRelease(48)}}, финальные имена API и сематика не были еще реализованы. Изменения между Firefox v. 46 и v. 48:

    +

    До SpiderMonkey 48 {{geckoRelease(48)}}, финальные имена API и семантика не были еще реализованы. Изменения между Firefox v. 46 и v. 48:

    • Методы Atomics.futexWakeOrRequeue() и Atomics.fence() полностью удалены ({{bug(1259544)}} и {{bug(1225028)}}).
    • -
    • Методы {{jsxref("Atomics.wait()")}} и {{jsxref("Atomics.wake()")}} были назвны Atomics.futexWait() и Atomics.futexWake() ({{bug(1260910)}}). Заметка: старые имена были удалены в версии 49 и младше ({{bug(1262062)}}).
    • +
    • Методы {{jsxref("Atomics.wait()")}} и {{jsxref("Atomics.wake()")}} были названы Atomics.futexWait() и Atomics.futexWake() ({{bug(1260910)}}). Заметка: старые имена были удалены в версии 49 и младше ({{bug(1262062)}}).
    • Свойства Atomics.OK, Atomics.TIMEDOUT, Atomics.NOTEQUAL были удалены. {{jsxref("Atomics.wait()")}} метод теперь возвращает строки "ok", "timed-out" и "not-equal" ({{bug(1260835)}}).
    • Параметр count метода {{jsxref("Atomics.wake()")}} изменился: теперь он по умолчанию равен +Infinity, а не 0 ({{bug(1253350)}}).

      diff --git a/files/ru/web/javascript/reference/global_objects/atomics/sub/index.html b/files/ru/web/javascript/reference/global_objects/atomics/sub/index.html index 6535d885e5..d3a9bbd3b4 100644 --- a/files/ru/web/javascript/reference/global_objects/atomics/sub/index.html +++ b/files/ru/web/javascript/reference/global_objects/atomics/sub/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Atomics/sub ---
      {{JSRef}}
      -

      Статический метод Atomics.sub() вычитает представленное значение из текущего по указанной позиции в массиве и возвращает предыдущее значение в этой позиции. Эта атомарная опреация гарантирует, что никакой другой записи не произойдет, пока измененное значение не будет записано обратно.

      +

      Статический метод Atomics.sub() вычитает представленное значение из текущего по указанной позиции в массиве и возвращает предыдущее значение в этой позиции. Эта атомарная операция гарантирует, что никакой другой записи не произойдет, пока измененное значение не будет записано обратно.

      Синтаксис

      @@ -30,7 +30,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Atomics/sub

      Исключения

        -
      • Выбрасывает {{jsxref("TypeError")}},  если тип typedArray не является одним из допустимых тцелочисленных типов.
      • +
      • Выбрасывает {{jsxref("TypeError")}},  если тип typedArray не является одним из допустимых целочисленных типов.
      • Выбрасывает {{jsxref("TypeError")}}, если тип typedArray не общего типа.
      • Выбрасывает {{jsxref("RangeError")}}, если index вне typedArray.
      diff --git a/files/ru/web/javascript/reference/global_objects/bigint/index.html b/files/ru/web/javascript/reference/global_objects/bigint/index.html index 36debd079b..c8e43137bf 100644 --- a/files/ru/web/javascript/reference/global_objects/bigint/index.html +++ b/files/ru/web/javascript/reference/global_objects/bigint/index.html @@ -39,7 +39,7 @@ const hugeBin = BigInt("0b11111111111111111111111111111111111111111111111111111"

      {{JSxRef("Number")}} и BigInt нельзя смешивать в операциях — они должны быть приведены к тому же типу.

      -

      Будте осторожны приводя значения туда и обратно,  так как точность BigInt может быть потеряна при приведении к числу (Number).

      +

      Будьте осторожны приводя значения туда и обратно,  так как точность BigInt может быть потеряна при приведении к числу (Number).

      Тип

      @@ -138,7 +138,7 @@ mixed.sort(); // ↪ [-12n, 0, 0n, 10, 4n, 4, 6]
    -

    Обратите внимание, что сравнения с обьектом-оберткой BigInt действуют как с другими объектами, указывая на равенство только когда сравинивается идентичный экземпляр объекта:

    +

    Обратите внимание, что сравнения с обьектом-оберткой BigInt действуют как с другими объектами, указывая на равенство только когда сравнивается идентичный экземпляр объекта:

    0n === Object(0n); // false
     Object(0n) === Object(0n); // false
    @@ -204,7 +204,7 @@ Boolean(12n)
     
     
    {{JSxRef("BigInt.prototype.toLocaleString()")}}
    -
    Возвращает строку с языкозависимым представлением числа. Переопредедяет метод {{JSxRef("Object.prototype.toLocaleString()")}}.
    +
    Возвращает строку с языкозависимым представлением числа. Переопределяет метод {{JSxRef("Object.prototype.toLocaleString()")}}.
    {{JSxRef("BigInt.prototype.toString()")}}
    Возвращает строку, представляющую указанный объект по указанному основанию системы счисления. Переопределяет метод {{JSxRef("Object.prototype.toString()")}}.
    {{JSxRef("BigInt.prototype.valueOf()")}}
    diff --git a/files/ru/web/javascript/reference/global_objects/date/index.html b/files/ru/web/javascript/reference/global_objects/date/index.html index 5979d471f2..a6ce5896e1 100644 --- a/files/ru/web/javascript/reference/global_objects/date/index.html +++ b/files/ru/web/javascript/reference/global_objects/date/index.html @@ -12,7 +12,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date

    Сводка

    -

    Создаёт экземпляр объекта Date, представляющего собой момент времени. Обьект Дата содержит число милисекунд прошедших с 1 января 1970 г. UTC

    +

    Создаёт экземпляр объекта Date, представляющего собой момент времени. Объект Дата содержит число миллисекунд прошедших с 1 января 1970 г. UTC

    @@ -95,7 +95,7 @@ new Date(year, month[, day[, hour[,
    {{jsxref("Date.parse()")}}
    Разбирает строковое представление даты и возвращает количество миллисекунд с 1 января 1970 года 00:00:00 по местному времени.
    {{jsxref("Date.UTC()")}}
    -
    Принимает те же самые параметры, что и самый длиный вариант конструктора (то есть, от 2 до 7) и возвращает количество миллисекунд, прошедших с 1 января 1970 года 00:00:00 по UTC.
    +
    Принимает те же самые параметры, что и самый длинный вариант конструктора (то есть, от 2 до 7) и возвращает количество миллисекунд, прошедших с 1 января 1970 года 00:00:00 по UTC.
    {{jsOverrides("Function", "Methods", "now", "parse", "UTC")}}
    diff --git a/files/ru/web/javascript/reference/global_objects/date/parse/index.html b/files/ru/web/javascript/reference/global_objects/date/parse/index.html index ce223350ef..e95659e217 100644 --- a/files/ru/web/javascript/reference/global_objects/date/parse/index.html +++ b/files/ru/web/javascript/reference/global_objects/date/parse/index.html @@ -41,7 +41,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/parse

    Строка с датой и временем может быть в формате ISO 8601. Например, могут быть переданы и разобраны строки "2011-10-10" (только дата) или "2011-10-10T14:48:00" (дата и время). Для интерпретации аргументов в формате ISO 8601, не содержащих информацию о часовом поясе, используется часовой пояс UTC.

    -

    Хотя во время разбора строки с датой и используется спецификатор часового пояса, возвращаемое значение всегда содержит количество миллисекунд между 1 января 1970 года 00:00:00 по UTC и моментом времени, представленым аргументом.

    +

    Хотя во время разбора строки с датой и используется спецификатор часового пояса, возвращаемое значение всегда содержит количество миллисекунд между 1 января 1970 года 00:00:00 по UTC и моментом времени, представленным аргументом.

    Поскольку метод parse() является статическим методом объекта {{jsxref("Global_Objects/Date", "Date")}}, вы всегда должны использовать его как Date.parse().

    @@ -51,7 +51,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/parse

    Откат к зависимым от реализации форматам даты

    -

    В спецификации ECMAScript говорится: если строка не соответствует стандартному формату, функция может откатиться к любой зависимой от реализации эвристике, либо к зависимому от реализции алгоритму разбора. Нераспознанные строки, либо даты, содержащие недопустимые значения элементов в строках формата ISO, должны при вызове Date.parse() возвращать {{jsxref("Global_Objects/NaN", "NaN")}}.

    +

    В спецификации ECMAScript говорится: если строка не соответствует стандартному формату, функция может откатиться к любой зависимой от реализации эвристике, либо к зависимому от реализации алгоритму разбора. Нераспознанные строки, либо даты, содержащие недопустимые значения элементов в строках формата ISO, должны при вызове Date.parse() возвращать {{jsxref("Global_Objects/NaN", "NaN")}}.

    Однако, недопустимые значения в строке даты, не распознанные как формат ISO, как определено ES5 могут возвращать, а могут и не возвращать {{jsxref("Global_Objects/NaN", "NaN")}} в качестве результата, в зависимости от браузера и предоставленных значений, например:

    diff --git a/files/ru/web/javascript/reference/global_objects/date/setfullyear/index.html b/files/ru/web/javascript/reference/global_objects/date/setfullyear/index.html index a0022b73cc..79c717f6c1 100644 --- a/files/ru/web/javascript/reference/global_objects/date/setfullyear/index.html +++ b/files/ru/web/javascript/reference/global_objects/date/setfullyear/index.html @@ -32,7 +32,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/setFullYear

    Возвращаемое значение

    -

    Текущее время в милисекундах для нового значения даты — такое же значение как и у метода {{jsxref("Date.prototype.getTime()", "getTime()")}} для текущего объекта после вызова setFullYear().

    +

    Текущее время в миллисекундах для нового значения даты — такое же значение как и у метода {{jsxref("Date.prototype.getTime()", "getTime()")}} для текущего объекта после вызова setFullYear().

    Описание

    diff --git a/files/ru/web/javascript/reference/global_objects/date/todatestring/index.html b/files/ru/web/javascript/reference/global_objects/date/todatestring/index.html index c36b9f6929..b3196e1ba4 100644 --- a/files/ru/web/javascript/reference/global_objects/date/todatestring/index.html +++ b/files/ru/web/javascript/reference/global_objects/date/todatestring/index.html @@ -18,7 +18,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/toDateString
    dateObj.toDateString()

    Описание

    -

    Экземпляры объекта {{jsxref("Global_Objects/Date", "Date")}} ссылаются на определённый момент времени. Вызов метода {{jsxref("Date.prototype.toString()", "toString()")}} вернёт дату, отформатированную в виде человеко-читаемой строки на американском английском. В SpiderMonkey она состоит из части, содержищей дату (день, месяц и год) и следующей за ней части, содержащей время (часы, минуты, секунды и часовой пояс). Иногда желательно получить строку, содержащую только часть с датой; этого можно достигнуть использованием метода toDateString().

    +

    Экземпляры объекта {{jsxref("Global_Objects/Date", "Date")}} ссылаются на определённый момент времени. Вызов метода {{jsxref("Date.prototype.toString()", "toString()")}} вернёт дату, отформатированную в виде человеко-читаемой строки на американском английском. В SpiderMonkey она состоит из части, содержащей дату (день, месяц и год) и следующей за ней части, содержащей время (часы, минуты, секунды и часовой пояс). Иногда желательно получить строку, содержащую только часть с датой; этого можно достигнуть использованием метода toDateString().

    Метод toDateString() полезен тем, что совместимые движки, реализующие ECMA-262 могут давать разные строки с помощью метода {{jsxref("Date.prototype.toString()", "toString()")}} объекта {{jsxref("Global_Objects/Date", "Date")}}, поскольку формат строки зависит от реализации и простой подход с разрезанием строки на дату и время может не всегда сработать.

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/date/tostring/index.html b/files/ru/web/javascript/reference/global_objects/date/tostring/index.html index 321a941ea9..467271f6dd 100644 --- a/files/ru/web/javascript/reference/global_objects/date/tostring/index.html +++ b/files/ru/web/javascript/reference/global_objects/date/tostring/index.html @@ -28,7 +28,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/toString

    Примеры

    Пример: использование метода toString()

    -

    В следующем примере переменной myVar присваевается значение, возвращённое методом toString() объекта {{jsxref("Global_Objects/Date", "Date")}}:

    +

    В следующем примере переменной myVar присваивается значение, возвращённое методом toString() объекта {{jsxref("Global_Objects/Date", "Date")}}:

    var x = new Date();
     myVar = x.toString(); // присваивает переменной myVar значение вроде:
     // Mon Sep 28 1998 14:36:22 GMT-0700 (Pacific Daylight Time)
    diff --git a/files/ru/web/javascript/reference/global_objects/date/totimestring/index.html b/files/ru/web/javascript/reference/global_objects/date/totimestring/index.html
    index f101bc29dc..64074e0d6a 100644
    --- a/files/ru/web/javascript/reference/global_objects/date/totimestring/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/date/totimestring/index.html
    @@ -21,7 +21,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/toTimeString
     
     

    Описание

    -

    Экземпляры объекта {{jsxref("Global_Objects/Date", "Date")}} ссылаются на определённый момент времени. Вызов метода {{jsxref("Date.prototype.toString()", "toString()")}} вернёт дату, отформатированную в виде человеко-читаемой строки на американском английском. В SpiderMonkey она состоит из части, содержищей дату (день, месяц и год) и следующей за ней части, содержащей время (часы, минуты, секунды и часовой пояс). Иногда желательно получить строку, содержащую только часть со временем; этого можно достигнуть использованием метода toTimeString().

    +

    Экземпляры объекта {{jsxref("Global_Objects/Date", "Date")}} ссылаются на определённый момент времени. Вызов метода {{jsxref("Date.prototype.toString()", "toString()")}} вернёт дату, отформатированную в виде человеко-читаемой строки на американском английском. В SpiderMonkey она состоит из части, содержащей дату (день, месяц и год) и следующей за ней части, содержащей время (часы, минуты, секунды и часовой пояс). Иногда желательно получить строку, содержащую только часть со временем; этого можно достигнуть использованием метода toTimeString().

    Метод toTimeString() полезен тем, что совместимые движки, реализующие ECMA-262 могут давать разные строки с помощью метода {{jsxref("Date.prototype.toString()", "toString()")}} объекта {{jsxref("Global_Objects/Date", "Date")}}, поскольку формат строки зависит от реализации и простой подход с разрезанием строки на дату и время может не всегда сработать.

    diff --git a/files/ru/web/javascript/reference/global_objects/date/toutcstring/index.html b/files/ru/web/javascript/reference/global_objects/date/toutcstring/index.html index 60aecd9ece..f603359b99 100644 --- a/files/ru/web/javascript/reference/global_objects/date/toutcstring/index.html +++ b/files/ru/web/javascript/reference/global_objects/date/toutcstring/index.html @@ -21,7 +21,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/toUTCString

    Нет.

    Описание

    -

    Значение, возвращаемое методом toUTCString(), является человеко-читаемой строкой в часовом поясе UTC. Формат возвращаемого значения зависит от платформы. Наиболее растпространённым значением является форматированная по RFC-1123 временная метка, которая является немного обновлённой версией временной метки RFC-822.

    +

    Значение, возвращаемое методом toUTCString(), является человеко-читаемой строкой в часовом поясе UTC. Формат возвращаемого значения зависит от платформы. Наиболее распространенным значением является форматированная по RFC-1123 временная метка, которая является немного обновлённой версией временной метки RFC-822.

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/encodeuricomponent/index.html b/files/ru/web/javascript/reference/global_objects/encodeuricomponent/index.html index 73420f234c..a0c6b028db 100644 --- a/files/ru/web/javascript/reference/global_objects/encodeuricomponent/index.html +++ b/files/ru/web/javascript/reference/global_objects/encodeuricomponent/index.html @@ -38,7 +38,7 @@ console.log(encodeURIComponent('\uDFFF'));

    Для application/x-www-form-urlencoded пробелы должны быть заменены на "+", поэтому вам может понадобиться encodeURIComponent с дополнительной заменой "%20" на "+".

    -

    Чтобы строго соблюдать RFC 3986 (который резервирует !, ', (, ), и *), даже не смотря на то, что символы не используют сформированных URI разделителей, можно безопасно использовать следущее:

    +

    Чтобы строго соблюдать RFC 3986 (который резервирует !, ', (, ), и *), даже не смотря на то, что символы не используют сформированных URI разделителей, можно безопасно использовать следующие:

    function fixedEncodeURIComponent (str) {
       return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {
    diff --git a/files/ru/web/javascript/reference/global_objects/error/columnnumber/index.html b/files/ru/web/javascript/reference/global_objects/error/columnnumber/index.html
    index 8138b26a29..6a94012ec6 100644
    --- a/files/ru/web/javascript/reference/global_objects/error/columnnumber/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/error/columnnumber/index.html
    @@ -20,7 +20,7 @@ throw e;
     console.log(e.columnNumber) // 0
     

    Спецификации

    -

    Не является чаcтью какой-либо спецификации. Не стандартно.

    +

    Не является частью какой-либо спецификации. Не стандартно.

    Совместимость с браузерами

    {{CompatibilityTable}}
    diff --git a/files/ru/web/javascript/reference/global_objects/error/filename/index.html b/files/ru/web/javascript/reference/global_objects/error/filename/index.html index c2f2affeb0..21608199dc 100644 --- a/files/ru/web/javascript/reference/global_objects/error/filename/index.html +++ b/files/ru/web/javascript/reference/global_objects/error/filename/index.html @@ -22,7 +22,7 @@ throw e; // e.fileName может выглядеть так "file:///C:/example.html"

    Спецификации

    -

    Не является чаcтью какой-либо спецификации. Не стандартно.

    +

    Не является частью какой-либо спецификации. Не стандартно.

    Совместимость с браузерами

    {{CompatibilityTable}}
    diff --git a/files/ru/web/javascript/reference/global_objects/error/index.html b/files/ru/web/javascript/reference/global_objects/error/index.html index 95fd8918a1..90a108b2a4 100644 --- a/files/ru/web/javascript/reference/global_objects/error/index.html +++ b/files/ru/web/javascript/reference/global_objects/error/index.html @@ -29,9 +29,9 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Error

    Описание

    -

    Во время выполения кода ошибки приводят к созданию и выбрасыванию новых объектов Error.

    +

    Во время выполнения кода ошибки приводят к созданию и выбрасыванию новых объектов Error.

    -

    Данная страница документирует использование объекта Error как самого по себе, так и при использовании в качестве функции-конструктора. Список свойств и методов, унаследованых экземплярами объекта Error, смотрите в разделе {{jsxref("Error.prototype")}}.

    +

    Данная страница документирует использование объекта Error как самого по себе, так и при использовании в качестве функции-конструктора. Список свойств и методов, унаследованных экземплярами объекта Error, смотрите в разделе {{jsxref("Error.prototype")}}.

     

    @@ -121,7 +121,7 @@ const y = new Error('I was constructed via the "new" keyword!');

    Пример: пользовательские типы ошибок

    -

    Вы можете захотеть определить свои собственные типы ошибок, унаследованные от Error, что бы иметь возможноть писать throw new MyError() и использовать instanceof MyError для проверки вида ошибки в обработчике исключений. Ниже продемонстрирован общий подход к выполнению этой задачи.

    +

    Вы можете захотеть определить свои собственные типы ошибок, унаследованные от Error, что бы иметь возможность писать throw new MyError() и использовать instanceof MyError для проверки вида ошибки в обработчике исключений. Ниже продемонстрирован общий подход к выполнению этой задачи.

    Предупреждение: обратите внимание, что выбрасывание MyError будет сообщать неправильные номер строки lineNumber и имя файла fileName как минимум, в Firefox.

    diff --git a/files/ru/web/javascript/reference/global_objects/error/linenumber/index.html b/files/ru/web/javascript/reference/global_objects/error/linenumber/index.html index c9f2d5c33e..64aea0eae7 100644 --- a/files/ru/web/javascript/reference/global_objects/error/linenumber/index.html +++ b/files/ru/web/javascript/reference/global_objects/error/linenumber/index.html @@ -33,7 +33,7 @@ throw e;

    Это стандарт и он поддерживается в Chrome, Firefox и, вероятно, много где ещё.

    Спецификации

    -

    Не является чаcтью какой-либо спецификации. Не стандартно.

    +

    Не является частью какой-либо спецификации. Не стандартно.

    Совместимость с браузерами

    {{CompatibilityTable}}
    diff --git a/files/ru/web/javascript/reference/global_objects/error/stack/index.html b/files/ru/web/javascript/reference/global_objects/error/stack/index.html index de0f95e041..ecc9502f7e 100644 --- a/files/ru/web/javascript/reference/global_objects/error/stack/index.html +++ b/files/ru/web/javascript/reference/global_objects/error/stack/index.html @@ -87,7 +87,7 @@ try {

    Также для именования исходного кода в функции eval() вы можете использовать директиву //# sourceURL. Смотрите раздел Отладка исходных кодов в функции eval() в документации по отладчику, а также эту запись в блоге (на английском).

    Спецификации

    -

    Не является чаcтью какой-либо спецификации. Не стандартно.

    +

    Не является частью какой-либо спецификации. Не стандартно.

    Совместимость с браузерами

    {{CompatibilityTable}}
    diff --git a/files/ru/web/javascript/reference/global_objects/error/tosource/index.html b/files/ru/web/javascript/reference/global_objects/error/tosource/index.html index 7cc274da14..680162de48 100644 --- a/files/ru/web/javascript/reference/global_objects/error/tosource/index.html +++ b/files/ru/web/javascript/reference/global_objects/error/tosource/index.html @@ -27,7 +27,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Error/toSource

    Спецификации

    -

    Не является чаcтью какого-либо стандарта. Реализована в JavaScript 1.3.

    +

    Не является частью какого-либо стандарта. Реализована в JavaScript 1.3.

    Совместимость с браузерами

    {{CompatibilityTable}}
    diff --git a/files/ru/web/javascript/reference/global_objects/escape/index.html b/files/ru/web/javascript/reference/global_objects/escape/index.html index faaef7049c..edc41f8259 100644 --- a/files/ru/web/javascript/reference/global_objects/escape/index.html +++ b/files/ru/web/javascript/reference/global_objects/escape/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/escape ---
    {{jsSidebar("Objects")}} {{deprecated_header}}
    -

    Устаревший метод escape() возвращает новую строку, в которой определенные символы заменены шестнадцаричной управляющей последовательностью.  Используйте методы {{jsxref("encodeURI")}} или {{jsxref("encodeURIComponent")}} вместо него.

    +

    Устаревший метод escape() возвращает новую строку, в которой определенные символы заменены шестнадцатеричной управляющей последовательностью.  Используйте методы {{jsxref("encodeURI")}} или {{jsxref("encodeURIComponent")}} вместо него.

    Синтаксис

    diff --git a/files/ru/web/javascript/reference/global_objects/eval/index.html b/files/ru/web/javascript/reference/global_objects/eval/index.html index 35cbdecc2e..73b1b392b9 100644 --- a/files/ru/web/javascript/reference/global_objects/eval/index.html +++ b/files/ru/web/javascript/reference/global_objects/eval/index.html @@ -10,7 +10,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/eval
    {{jsSidebar("Objects")}}
    -

    Warning: Выполнение кода JavaScript с текстовой строки - это невероятный риск для безопасности. Злоумышленнику слишком легко запустить какой угодно код, когда вы используете eval(). Смотрите  Никогда не изпользуте eval()!, ниже.

    +

    Warning: Выполнение кода JavaScript с текстовой строки - это невероятный риск для безопасности. Злоумышленнику слишком легко запустить какой угодно код, когда вы используете eval(). Смотрите  Никогда не используйте eval()!, ниже.

    Метод eval() выполняет JavaScript код, представленный строкой.

    @@ -56,7 +56,7 @@ eval("2 + 2"); // возвращает 4 eval(expression.toString());
    -

    Если вы используете eval косвенно, вызовом его через ссылку, а не просто eval, в ECMAScript 5 это работает в глобальной области видимости, а не в локальной; это значит, что eval будет вызван в глобальной области видимости, а код будет выполнен с отсутвием доступа к локальным переменным в пределах области видимости, где он был вызван.

    +

    Если вы используете eval косвенно, вызовом его через ссылку, а не просто eval, в ECMAScript 5 это работает в глобальной области видимости, а не в локальной; это значит, что eval будет вызван в глобальной области видимости, а код будет выполнен с отсутствием доступа к локальным переменным в пределах области видимости, где он был вызван.

    function test() {
       var x = 2, y = 4;
    @@ -132,7 +132,7 @@ eval(z);           // вернёт 42
     
     

    Использование eval для исполнения строки, содержащей операторы JavaScript

    -

    Следующий пример использует eval() для получения значения выражения str. Эта строка состоит из JavaScript выражений, печатающих в консоль, и, если x равен пяти, присвающих z значение 42, или 0 в противном случае. Когда второе выражение будет исполнено, eval() будет считать выражения выполненными, а также это установит значение выражению переменной z и вернет его.

    +

    Следующий пример использует eval() для получения значения выражения str. Эта строка состоит из JavaScript выражений, печатающих в консоль, и, если x равен пяти, призывающих z значение 42, или 0 в противном случае. Когда второе выражение будет исполнено, eval() будет считать выражения выполненными, а также это установит значение выражению переменной z и вернет его.

    var x = 5;
     var str = "if (x == 5) {console.log('z is 42'); z = 42;} else z = 0; ";
    diff --git a/files/ru/web/javascript/reference/global_objects/evalerror/index.html b/files/ru/web/javascript/reference/global_objects/evalerror/index.html
    index 016930c2aa..82a6037e91 100644
    --- a/files/ru/web/javascript/reference/global_objects/evalerror/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/evalerror/index.html
    @@ -79,12 +79,12 @@ translation_of: Web/JavaScript/Reference/Global_Objects/EvalError
       
        {{SpecName('ES5.1', '#sec-15.11.6.1', 'EvalError')}}
        {{Spec2('ES5.1')}}
    -   Не используется в этой спецификаци. Присутствует для обратной совместимости.
    +   Не используется в этой спецификации. Присутствует для обратной совместимости.
       
       
        {{SpecName('ES6', '#sec-native-error-types-used-in-this-standard-evalerror', 'EvalError')}}
        {{Spec2('ES6')}}
    -   Не используется в этой спецификаци. Присутствует для обратной совместимости.
    +   Не используется в этой спецификации. Присутствует для обратной совместимости.
       
      
     
    diff --git a/files/ru/web/javascript/reference/global_objects/float32array/index.html b/files/ru/web/javascript/reference/global_objects/float32array/index.html
    index dec9a2b937..dcd127face 100644
    --- a/files/ru/web/javascript/reference/global_objects/float32array/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/float32array/index.html
    @@ -70,11 +70,11 @@ new Float32Array(buffer [, byteOffset [, length]]);
    {{jsxref("TypedArray.fill", "Float32Array.prototype.fill()")}}
    Заполняет весь массив от начального до последнего индекса одинаковыми элементами. Смотрите также {{jsxref("Array.prototype.fill()")}}.
    {{jsxref("TypedArray.filter", "Float32Array.prototype.filter()")}}
    -
    Возвращает новый массив со всеми элементами удовлетворяющеми условию. Смотрите также {{jsxref("Array.prototype.filter()")}}.
    +
    Возвращает новый массив со всеми элементами удовлетворяющей условию. Смотрите также {{jsxref("Array.prototype.filter()")}}.
    {{jsxref("TypedArray.find", "Float32Array.prototype.find()")}}
    -
    Возвращает найденное значение в массиве, если найден элемент соответствуший условию, в противном случае возвращает undefined. Смотрите также {{jsxref("Array.prototype.find()")}}.
    +
    Возвращает найденное значение в массиве, если найден элемент соответствующий условию, в противном случае возвращает undefined. Смотрите также {{jsxref("Array.prototype.find()")}}.
    {{jsxref("TypedArray.findIndex", "Float32Array.prototype.findIndex()")}}
    -
    Возвращает индекс найденного значения в массиве, если найден элемент соответствуеший условию, в противном случае возвращает -1. Смотрите также {{jsxref("Array.prototype.findIndex()")}}.
    +
    Возвращает индекс найденного значения в массиве, если найден элемент соответствующий условию, в противном случае возвращает -1. Смотрите также {{jsxref("Array.prototype.findIndex()")}}.
    {{jsxref("TypedArray.forEach", "Float32Array.prototype.forEach()")}}
    Вызывает функцию для каждого элемента в массиве. Смотрите также {{jsxref("Array.prototype.forEach()")}}.
    {{jsxref("TypedArray.includes", "Float32Array.prototype.includes()")}} {{experimental_inline}}
    @@ -90,7 +90,7 @@ new Float32Array(buffer [, byteOffset [, length]]);
    {{jsxref("TypedArray.map", "Float32Array.prototype.map()")}}
    Возвращает новый массив с результатом применения функции к каждому элементу в этом массиве. Смотрите также {{jsxref("Array.prototype.map()")}}.
    {{jsxref("TypedArray.move", "Float32Array.prototype.move()")}} {{non-standard_inline}} {{unimplemented_inline}}
    -
    Нестандаризированная версия {{jsxref("TypedArray.copyWithin", "Float32Array.prototype.copyWithin()")}}.
    +
    Нестандартизированная версия {{jsxref("TypedArray.copyWithin", "Float32Array.prototype.copyWithin()")}}.
    {{jsxref("TypedArray.reduce", "Float32Array.prototype.reduce()")}}
    Применяет функцию к каждому элементу в массиве (слева-направо) и накапливает результат в переменной. Смотрите также {{jsxref("Array.prototype.reduce()")}}.
    {{jsxref("TypedArray.reduceRight", "Float32Array.prototype.reduceRight()")}}
    @@ -108,7 +108,7 @@ new Float32Array(buffer [, byteOffset [, length]]);
    {{jsxref("TypedArray.subarray", "Float32Array.prototype.subarray()")}}
    Возваращает новый Float32Array с заданного начального по конечный индекс.
    {{jsxref("TypedArray.values", "Float32Array.prototype.values()")}}
    -
    Возвращает новый объект Array Iterator котрый содержит значения всех элементов в массиве. Смотрите также {{jsxref("Array.prototype.values()")}}.
    +
    Возвращает новый объект Array Iterator который содержит значения всех элементов в массиве. Смотрите также {{jsxref("Array.prototype.values()")}}.
    {{jsxref("TypedArray.toLocaleString", "Float32Array.prototype.toLocaleString()")}}
    Возвращает локализированную строку представляющую массив и его элементы. Смотрите также {{jsxref("Array.prototype.toLocaleString()")}}.
    {{jsxref("TypedArray.toString", "Float32Array.prototype.toString()")}}
    diff --git a/files/ru/web/javascript/reference/global_objects/function/apply/index.html b/files/ru/web/javascript/reference/global_objects/function/apply/index.html index 538c25a654..af1391a6b7 100644 --- a/files/ru/web/javascript/reference/global_objects/function/apply/index.html +++ b/files/ru/web/javascript/reference/global_objects/function/apply/index.html @@ -113,7 +113,7 @@ for (var i = 0; i < numbers.length; i++) { }
    -

    Но будьте осторожны: при использовании метода apply() таким образом вы рискуете выйти за пределы ограничения на количество аргументов в движке JavaScript. Последствия применения функции с очень большим количеством аргументов (думается, больше десяти тысяч аргументов) различаются от движка к движку (JavaScriptCore имеет жёстко зашитое ограничение на количество аргументов в 65536), поскольку этот предел (на самом деле, это природа поведения любого чрезвычайно огромного стека) не определён. Некоторые движки будут выкидывать исключение. Хуже того, другие просто отбрасывают реально переданные функции аргументы сверх лимита. (Для иллюстрации последнего случая: если такой движок имеет ограничение в четыре элемента [реальное ограничение, конечно же, гораздо выше], это выглядело бы так, как если бы в примере выше в метод apply() были переданы аргументы 5, 6, 2, 3, а не весь массив.) Если ваш масив значений может вырасти до десятков тысяч, используйте смешанный подход: применяйте вашу функцию к порциям массива:

    +

    Но будьте осторожны: при использовании метода apply() таким образом вы рискуете выйти за пределы ограничения на количество аргументов в движке JavaScript. Последствия применения функции с очень большим количеством аргументов (думается, больше десяти тысяч аргументов) различаются от движка к движку (JavaScriptCore имеет жёстко зашитое ограничение на количество аргументов в 65536), поскольку этот предел (на самом деле, это природа поведения любого чрезвычайно огромного стека) не определён. Некоторые движки будут выкидывать исключение. Хуже того, другие просто отбрасывают реально переданные функции аргументы сверх лимита. (Для иллюстрации последнего случая: если такой движок имеет ограничение в четыре элемента [реальное ограничение, конечно же, гораздо выше], это выглядело бы так, как если бы в примере выше в метод apply() были переданы аргументы 5, 6, 2, 3, а не весь массив.) Если ваш массив значений может вырасти до десятков тысяч, используйте смешанный подход: применяйте вашу функцию к порциям массива:

    function minOfArray(arr) {
       var min = Infinity;
    diff --git a/files/ru/web/javascript/reference/global_objects/function/arguments/index.html b/files/ru/web/javascript/reference/global_objects/function/arguments/index.html
    index 7b089887c4..1d0e5fb7ff 100644
    --- a/files/ru/web/javascript/reference/global_objects/function/arguments/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/function/arguments/index.html
    @@ -14,7 +14,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Function/arguments
     

    Сводка

    Свойство function.arguments ссылалось на массивоподобный объект, соответствующий аргументам, переданным в функцию. Используйте вместо него простую переменную {{jsxref("Functions_and_function_scope/arguments", "arguments")}}.

    Описание

    -

    Синтаксис function.arguments устарел. Рекомендуемым способом доступа к объекту {{jsxref("Functions_and_function_scope/arguments", "arguments")}}, доступному внутри функций, являеся простая ссылка на переменную {{jsxref("Functions_and_function_scope/arguments", "arguments")}}.

    +

    Синтаксис function.arguments устарел. Рекомендуемым способом доступа к объекту {{jsxref("Functions_and_function_scope/arguments", "arguments")}}, доступному внутри функций, является простая ссылка на переменную {{jsxref("Functions_and_function_scope/arguments", "arguments")}}.

    В случае рекурсии, то есть, если функция f несколько раз появляется в стеке вызовов, значение f.arguments представляет аргументы, соответствующие самому последнему вызову функции.

    Примеры

    function f(n) { g(n - 1); }
    diff --git a/files/ru/web/javascript/reference/global_objects/function/bind/index.html b/files/ru/web/javascript/reference/global_objects/function/bind/index.html
    index a3f69f8adc..6cd8230241 100644
    --- a/files/ru/web/javascript/reference/global_objects/function/bind/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/function/bind/index.html
    @@ -163,7 +163,7 @@ emptyObj.x + ',' + emptyObj.y;
     
     

    Пример: создание сокращений

    -

    Метод bind() также полезен в случаях, если вы хотите создать сокращение для функции, требующей определёное значение this.

    +

    Метод bind() также полезен в случаях, если вы хотите создать сокращение для функции, требующей определенное значение this.

    Возьмём, например, метод {{jsxref("Array.prototype.slice")}}, который вы можете использовать для преобразования массивоподобного объекта в настоящий массив. Вы можете создать подобное сокращение:

    diff --git a/files/ru/web/javascript/reference/global_objects/function/index.html b/files/ru/web/javascript/reference/global_objects/function/index.html index 63d7e776c0..4b6b4f5825 100644 --- a/files/ru/web/javascript/reference/global_objects/function/index.html +++ b/files/ru/web/javascript/reference/global_objects/function/index.html @@ -36,7 +36,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Function

    Описание

    -

    Объекты Function, созданные констуктором Function, разбираются при создании функции. Это менее эффективно определения функции при помощи выражения function или инструкции function и вызова её внутри вашего кода, поскольку такие функции разбираются вместе с остальным кодом.

    +

    Объекты Function, созданные конструктором Function, разбираются при создании функции. Это менее эффективно определения функции при помощи выражения function или инструкции function и вызова её внутри вашего кода, поскольку такие функции разбираются вместе с остальным кодом.

    Все аргументы, переданные в функцию, трактуются как имена идентификаторов параметров создаваемой функции, и имеют тот же порядок следования, что и при их передаче в конструктор функции.

    @@ -44,7 +44,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Function

    Примечание: функции, созданные конструктором Function, не создают замыканий на их контексты создания; они всегда создаются в глобальной области видимости. При их вызове, они получат доступ только к своим локальным переменным и переменным из глобальной области видимости, но не к переменным в той области видимости, в которой вызывался конструктор Function. Это поведение отличается от поведения при использовании функции {{jsxref("Global_Objects/eval", "eval")}} с кодом создания функции.

    -

    Вызов констуктора Function как функции (без использования оператора new) имеет тот же самый эффект, что и вызов его как констуктора.

    +

    Вызов конструктора Function как функции (без использования оператора new) имеет тот же самый эффект, что и вызов его как конструктора.

    Свойства и методы объекта Function

    @@ -62,7 +62,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Function

    Экземпляры объекта Function

    -

    Экземпляры объекта Function наследуют методы и свойства из объекта {{jsxref("Function.prototype")}}. Как и со всеми другими конструкторами, вы можете изменить объект прототипа констуктора для применения изменений ко всем экземплярам объекта Function.

    +

    Экземпляры объекта Function наследуют методы и свойства из объекта {{jsxref("Function.prototype")}}. Как и со всеми другими конструкторами, вы можете изменить объект прототипа конструктора для применения изменений ко всем экземплярам объекта Function.

    Примеры

    @@ -80,7 +80,7 @@ adder(2, 6); // > 8
    -

    Аргуметы "a" и "b" являются именами формальных аргументов, которые используются в теле функции, "return a + b".

    +

    Аргументы "a" и "b" являются именами формальных аргументов, которые используются в теле функции, "return a + b".

    Пример: рекурсивное сокращение для массового изменения DOM

    diff --git a/files/ru/web/javascript/reference/global_objects/function/name/index.html b/files/ru/web/javascript/reference/global_objects/function/name/index.html index 212b9cb735..6beee2a14d 100644 --- a/files/ru/web/javascript/reference/global_objects/function/name/index.html +++ b/files/ru/web/javascript/reference/global_objects/function/name/index.html @@ -11,11 +11,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Function/name ---

    {{JSRef}}

    -

    Read-only свойство name глобального объекта {{jsxref("Function")}} и его экзепляров содержит название функции созданное во время определения функции или присваивания ссылки на функцию переменной, свойству, аргументу и т. п. Для анонимных функций это свойство может иметь значение "anonymous" или пустую строку  "".

    +

    Read-only свойство name глобального объекта {{jsxref("Function")}} и его экземпляров содержит название функции созданное во время определения функции или присваивания ссылки на функцию переменной, свойству, аргументу и т. п. Для анонимных функций это свойство может иметь значение "anonymous" или пустую строку  "".

    {{EmbedInteractiveExample("pages/js/function-name.html")}}

    -

    Интерактивные примеры размещены в GitHub репозитории. Если вы хотите добавить свои примеры, то клонируйте https://github.com/mdn/interactive-examples и пришлите пулл реквест.

    +

    Интерактивные примеры размещены в GitHub репозитории. Если вы хотите добавить свои примеры, то клонируйте https://github.com/mdn/interactive-examples и пришлите пул реквест.

    {{js_property_attributes(0,0,1)}}
     

    diff --git a/files/ru/web/javascript/reference/global_objects/function/tosource/index.html b/files/ru/web/javascript/reference/global_objects/function/tosource/index.html index 335967947b..de43389aed 100644 --- a/files/ru/web/javascript/reference/global_objects/function/tosource/index.html +++ b/files/ru/web/javascript/reference/global_objects/function/tosource/index.html @@ -29,7 +29,7 @@ Function.toSource();
  • Для пользовательских функций, метод toSource возвращает исходный код JavaScript, определяющий объект как строку.
  • -

    Этот метод обычно вызывается внутренними механизмаим движка JavaScript, а не явно в коде. Вы можете вызвать toSource во время отладки для изучения содержимого объекта.

    +

    Этот метод обычно вызывается внутренними механизмами движка JavaScript, а не явно в коде. Вы можете вызвать toSource во время отладки для изучения содержимого объекта.

    Спецификации

    Не является частью какого-либо стандарта. Реализована в JavaScript 1.3.

    Совместимость с браузерами

    diff --git a/files/ru/web/javascript/reference/global_objects/generator/index.html b/files/ru/web/javascript/reference/global_objects/generator/index.html index 385792c2e0..8e530ff328 100644 --- a/files/ru/web/javascript/reference/global_objects/generator/index.html +++ b/files/ru/web/javascript/reference/global_objects/generator/index.html @@ -18,7 +18,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Generator

    Конструктор

    -

    Этот объект не может быть инстанциирован напрямую. Вместо этого, экемпляр Generator может быть возвращён из функции-генератора:

    +

    Этот объект не может быть инстанциирован напрямую. Вместо этого, экземпляр Generator может быть возвращён из функции-генератора:

    function* generator() {
       yield 1;
    diff --git a/files/ru/web/javascript/reference/global_objects/generator/next/index.html b/files/ru/web/javascript/reference/global_objects/generator/next/index.html
    index 5e69003f85..d3d378904d 100644
    --- a/files/ru/web/javascript/reference/global_objects/generator/next/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/generator/next/index.html
    @@ -100,7 +100,7 @@ g.next(2);
      
     
     
    -

    Совсестимость с браузерами

    +

    Совместимость с браузерами

    diff --git a/files/ru/web/javascript/reference/global_objects/int32array/index.html b/files/ru/web/javascript/reference/global_objects/int32array/index.html index bcb0ba23a0..8a3a712863 100644 --- a/files/ru/web/javascript/reference/global_objects/int32array/index.html +++ b/files/ru/web/javascript/reference/global_objects/int32array/index.html @@ -23,9 +23,9 @@ new Int32Array(buffer [, byteOffset [, length]]);
    {{jsxref("TypedArray.BYTES_PER_ELEMENT", "Int32Array.BYTES_PER_ELEMENT")}}
    Возвращает числовое значение размера элемента. 4 в случае с Int32Array.
    Int32Array.length
    -
    Свойство статического размера, значение которого равно 3. Для актуального размера (колличества элементов), смотрите {{jsxref("TypedArray.prototype.length", "Int32Array.prototype.length")}}.
    +
    Свойство статического размера, значение которого равно 3. Для актуального размера (количества элементов), смотрите {{jsxref("TypedArray.prototype.length", "Int32Array.prototype.length")}}.
    {{jsxref("TypedArray.name", "Int32Array.name")}}
    -
    Возвращяает строковое значение названия конструктора. В случае с тиопм Int32Array: "Int32Array".
    +
    Возвращает строковое значение названия конструктора. В случае с типом Int32Array: "Int32Array".
    {{jsxref("TypedArray.prototype", "Int32Array.prototype")}}
    Прототип для TypedArray объектов.
    @@ -154,7 +154,7 @@ var int32 = new Int32Array(iterable); Specification Статус - Коментарии + Комментарии {{SpecName('Typed Array')}} @@ -182,7 +182,7 @@ var int32 = new Int32Array(iterable);

    Compatibility notes

    -

    Начиная с ECMAScript 2015, конструкторы Int32Array требуют оператор {{jsxref("Operators/new", "new")}}. Вызов Int32Array коструктора как функцию без оператора new, вызовет ошибку {{jsxref("TypeError")}}.

    +

    Начиная с ECMAScript 2015, конструкторы Int32Array требуют оператор {{jsxref("Operators/new", "new")}}. Вызов Int32Array конструктора как функцию без оператора new, вызовет ошибку {{jsxref("TypeError")}}.

    var dv = Int32Array([1, 2, 3]);
     // TypeError: calling a builtin Int32Array constructor
    diff --git a/files/ru/web/javascript/reference/global_objects/int8array/index.html b/files/ru/web/javascript/reference/global_objects/int8array/index.html
    index 68ac4ff10c..7bf2e23483 100644
    --- a/files/ru/web/javascript/reference/global_objects/int8array/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/int8array/index.html
    @@ -23,9 +23,9 @@ new Int8Array(buffer [, byteOffset [, length]]);
    {{jsxref("TypedArray.BYTES_PER_ELEMENT", "Int8Array.BYTES_PER_ELEMENT")}}
    Возвращает числовое значение размера элемента массива. 1 в случае с Int8Array.
    Int8Array.length
    -
    Статическая длина конструктора Int8Array, всегда равна 3 (т.к. конструктор принимает до 3 аргументов). Чтобы узнать длину созданого массива, see {{jsxref("TypedArray.prototype.length", "Int8Array.prototype.length")}}.
    +
    Статическая длина конструктора Int8Array, всегда равна 3 (т.к. конструктор принимает до 3 аргументов). Чтобы узнать длину созданного массива, see {{jsxref("TypedArray.prototype.length", "Int8Array.prototype.length")}}.
    {{jsxref("TypedArray.name", "Int8Array.name")}}
    -
    Возращает строчное значение имени конструктора. В случае с Int8Array: "Int8Array".
    +
    Возвращает строчное значение имени конструктора. В случае с Int8Array: "Int8Array".
    {{jsxref("TypedArray.prototype", "Int8Array.prototype")}}
    Прототип для TypedArray objects.
    diff --git a/files/ru/web/javascript/reference/global_objects/intl/collator/index.html b/files/ru/web/javascript/reference/global_objects/intl/collator/index.html index cf3a3d3e52..720e93becb 100644 --- a/files/ru/web/javascript/reference/global_objects/intl/collator/index.html +++ b/files/ru/web/javascript/reference/global_objects/intl/collator/index.html @@ -10,7 +10,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/Collator
    {{JSRef("Global_Objects", "Collator", "Intl,DateTimeFormat,NumberFormat")}}

    Сводка

    -

    Объект Intl.Collator является конструктором сортировщиков — объектов, включающих языко-зависимое сравнение строк.

    +

    Объект Intl.Collator является конструктором сортировщиков — объектов, включающих языка-зависимое сравнение строк.

    Синтаксис

    new Intl.Collator([locales[, options]])
    diff --git a/files/ru/web/javascript/reference/global_objects/intl/datetimeformat/formattoparts/index.html b/files/ru/web/javascript/reference/global_objects/intl/datetimeformat/formattoparts/index.html
    index 4e5c29c315..e1626a4451 100644
    --- a/files/ru/web/javascript/reference/global_objects/intl/datetimeformat/formattoparts/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/intl/datetimeformat/formattoparts/index.html
    @@ -31,7 +31,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/form
     
     

    Описание

    -

    Метод formatToParts() полезен для пользовательского форматирования строки даты. Он возвращает массив объектов {{jsxref("Array")}}, содерщащий специфичные для данного места токены, из которых можно выстроить пользовательскую строку, которая сохранит специфичные для данного места части. Структура возвращаемого значения методом formatToParts() выглядит так:

    +

    Метод formatToParts() полезен для пользовательского форматирования строки даты. Он возвращает массив объектов {{jsxref("Array")}}, содержащий специфичные для данного места токены, из которых можно выстроить пользовательскую строку, которая сохранит специфичные для данного места части. Структура возвращаемого значения методом formatToParts() выглядит так:

    [
       { type: 'day', value: '17' },
    @@ -111,7 +111,7 @@ formatter.format(date);
     ]
     
    -

    Теперь информация доступна по отдельности и может быть отформатирована и объединена снова в пользавотельском порядке. Например, используя {{jsxref("Array.prototype.map()")}}, стрелочные функции, инструкцию switch, шаблонные строки и {{jsxref("Array.prototype.reduce()")}}.

    +

    Теперь информация доступна по отдельности и может быть отформатирована и объединена снова в пользовательском порядке. Например, используя {{jsxref("Array.prototype.map()")}}, стрелочные функции, инструкцию switch, шаблонные строки и {{jsxref("Array.prototype.reduce()")}}.

    var dateString = formatter.formatToParts(date).map(({type, value}) => {
       switch (type) {
    @@ -138,7 +138,7 @@ console.log(dateString);
     
    -   
    +   
    diff --git a/files/ru/web/javascript/reference/global_objects/intl/datetimeformat/index.html b/files/ru/web/javascript/reference/global_objects/intl/datetimeformat/index.html
    index 2bd44c9522..a9f3287a7c 100644
    --- a/files/ru/web/javascript/reference/global_objects/intl/datetimeformat/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/intl/datetimeformat/index.html
    @@ -11,7 +11,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat
     
     

    Сводка

    -

    Объект Intl.DateTimeFormat является конструктором объектов, включающих языко-зависимое форматирование даты и времени.

    +

    Объект Intl.DateTimeFormat является конструктором объектов, включающих языка-зависимое форматирование даты и времени.

    Синтаксис

    diff --git a/files/ru/web/javascript/reference/global_objects/intl/getcanonicallocales/index.html b/files/ru/web/javascript/reference/global_objects/intl/getcanonicallocales/index.html index 9a433c2776..3627f6de06 100644 --- a/files/ru/web/javascript/reference/global_objects/intl/getcanonicallocales/index.html +++ b/files/ru/web/javascript/reference/global_objects/intl/getcanonicallocales/index.html @@ -9,7 +9,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/getCanonicalLocales ---
    {{JSRef}}
    -

    Метод Intl.getCanonicalLocales() возвращает массив, содержащий канониченские коды языков. Повторяющиеся значения будут отброшены и элементы будут проверены на соответствие структуры языковых тегов.

    +

    Метод Intl.getCanonicalLocales() возвращает массив, содержащий канонические коды языков. Повторяющиеся значения будут отброшены и элементы будут проверены на соответствие структуры языковых тегов.

    {{EmbedInteractiveExample("pages/js/intl-getcanonicallocales.html")}}
    @@ -19,7 +19,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/getCanonicalLocales
    Intl.getCanonicalLocales(locales)
    -

    Парамерты

    +

    Параметры

    locales
    diff --git a/files/ru/web/javascript/reference/global_objects/intl/index.html b/files/ru/web/javascript/reference/global_objects/intl/index.html index cebbeccc60..4316488c58 100644 --- a/files/ru/web/javascript/reference/global_objects/intl/index.html +++ b/files/ru/web/javascript/reference/global_objects/intl/index.html @@ -11,17 +11,17 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl

    Сводка

    -

    Объект Intl является пространством имён для API интернационализации ECMAScript, предосталяющим языко-зависимое сравнение строк, форматирование чисел и дат со временем. Конструкторы объектов {{jsxref("Global_Objects/Collator", "Collator")}}, {{jsxref("Global_Objects/NumberFormat", "NumberFormat")}} и {{jsxref("Global_Objects/DateTimeFormat", "DateTimeFormat")}} являются свойствами объекта Intl. На этой странице описаны эти свойства, а также общая функциональность конструкторов интернационализации и других языко-зависимых функций.

    +

    Объект Intl является пространством имён для API интернационализации ECMAScript, предоставляющим языка-зависимое сравнение строк, форматирование чисел и дат со временем. Конструкторы объектов {{jsxref("Global_Objects/Collator", "Collator")}}, {{jsxref("Global_Objects/NumberFormat", "NumberFormat")}} и {{jsxref("Global_Objects/DateTimeFormat", "DateTimeFormat")}} являются свойствами объекта Intl. На этой странице описаны эти свойства, а также общая функциональность конструкторов интернационализации и других языка-зависимых функций.

    Свойства

    {{jsxref("Global_Objects/Collator", "Intl.Collator")}}
    -
    Конструктор сортировщиков — объектов, включающих языко-зависимое сравнение строк.
    +
    Конструктор сортировщиков — объектов, включающих языка-зависимое сравнение строк.
    {{jsxref("Global_Objects/DateTimeFormat", "Intl.DateTimeFormat")}}
    -
    Конструктор объектов, включающих языко-зависимое форматирование даты и времени.
    +
    Конструктор объектов, включающих языка-зависимое форматирование даты и времени.
    {{jsxref("Global_Objects/NumberFormat", "Intl.NumberFormat")}}
    -
    Конструктор объектов, включающих языко-зависимое форматирование чисел.
    +
    Конструктор объектов, включающих языка-зависимое форматирование чисел.

    Methods

    @@ -33,11 +33,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl

    Идентификация и согласование локали

    -

    Конструкторы интернационализации, а также некоторые языко-зависимые методы других конструкторов (перечисленные в разделе {{anch("See_also", "Смотрите также")}}) используют общий шаблон для идентификации локалей и определения используемой локали: они все принимают аргументы locales и options и согласовывают запрошенную локаль (локали) с поддерживаемыми локалями согласно алгоритму, определённому свойством options.localeMatcher.

    +

    Конструкторы интернационализации, а также некоторые языка-зависимые методы других конструкторов (перечисленные в разделе {{anch("See_also", "Смотрите также")}}) используют общий шаблон для идентификации локалей и определения используемой локали: они все принимают аргументы locales и options и согласовывают запрошенную локаль (локали) с поддерживаемыми локалями согласно алгоритму, определённому свойством options.localeMatcher.

    Аргумент locales

    -

    Аргумет locales должен быть либо строкой, содержащей языковую метку BCP 47, либо массивом таких языковых меток. Если аргумент locales не предоставлен или не определён, используется локаль по умолчанию среды выполнения.

    +

    Аргумент locales должен быть либо строкой, содержащей языковую метку BCP 47, либо массивом таких языковых меток. Если аргумент locales не предоставлен или не определён, используется локаль по умолчанию среды выполнения.

    Языковая метка BCP 47 однозначно определяет язык или локаль (разница между ними весьма расплывчата). В своей самой общей форме она может содержать в следующем порядке: код языка, код письменности и код страны, разделённые символами дефиса. Примеры:

    @@ -49,7 +49,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl

    Подметки, определяющие языки, письменности, страны (регионы) и (используется не часто) варианты в языковых метках BCP 47 могут быть найдены в Реестре языковых подметок IANA.

    -

    BCP 47 также позволяет использовать расширения, и одно из них имеет значение для функций интернационализации JavaScript: это расширение "u" (Unicode). Оно может использоваться для запрашивания настраиваемого языко-зависимого поведения объектов {{jsxref("Global_Objects/Collator", "Collator")}}, {{jsxref("Global_Objects/NumberFormat", "NumberFormat")}} или {{jsxref("Global_Objects/DateTimeFormat", "DateTimeFormat")}}. Примеры:

    +

    BCP 47 также позволяет использовать расширения, и одно из них имеет значение для функций интернационализации JavaScript: это расширение "u" (Unicode). Оно может использоваться для запрашивания настраиваемого языка-зависимого поведения объектов {{jsxref("Global_Objects/Collator", "Collator")}}, {{jsxref("Global_Objects/NumberFormat", "NumberFormat")}} или {{jsxref("Global_Objects/DateTimeFormat", "DateTimeFormat")}}. Примеры:

    • "de-DE-u-co-phonebk": использовать вариант телефонной книги немецкого порядка сортировки, который расширяет гласные с умляутами до пар символов: ä → ae, ö → oe, ü → ue.
    • @@ -67,7 +67,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl

      Аргумент options должен быть объектом со свойствами, которые различаются для конструкторов и функций. Если аргумент options не предоставлен или не определён, для всех свойств используются значения по умолчанию.

      -

      Одно свойство поддерживается для всех языко-зависимых конструкторов: свойство localeMatcher, чьим значением должна быть одна из строк "lookup" или "best fit" и которое выбирает один из алгоритмов сопоставления локалей, описанных выше.

      +

      Одно свойство поддерживается для всех языка-зависимых конструкторов: свойство localeMatcher, чьим значением должна быть одна из строк "lookup" или "best fit" и которое выбирает один из алгоритмов сопоставления локалей, описанных выше.

      Спецификации

      diff --git a/files/ru/web/javascript/reference/global_objects/intl/listformat/index.html b/files/ru/web/javascript/reference/global_objects/intl/listformat/index.html index cac65c8d03..3be63fdd6f 100644 --- a/files/ru/web/javascript/reference/global_objects/intl/listformat/index.html +++ b/files/ru/web/javascript/reference/global_objects/intl/listformat/index.html @@ -11,11 +11,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/ListFormat ---

      {{JSRef}}

      -

      Объект Intl.ListFormat представляет собой конструктор объектов, включающих языко-зависимое форматирование списков.

      +

      Объект Intl.ListFormat представляет собой конструктор объектов, включающих языка-зависимое форматирование списков.

      {{EmbedInteractiveExample("pages/js/intl-listformat.html")}}
      - +

      Синтаксис

      diff --git a/files/ru/web/javascript/reference/global_objects/intl/numberformat/index.html b/files/ru/web/javascript/reference/global_objects/intl/numberformat/index.html index e29eb2dd27..bcaccbfbd9 100644 --- a/files/ru/web/javascript/reference/global_objects/intl/numberformat/index.html +++ b/files/ru/web/javascript/reference/global_objects/intl/numberformat/index.html @@ -11,7 +11,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat

      Сводка

      -

      Объект Intl.NumberFormat является конструктором объектов, включающих языко-зависимое форматирование чисел.

      +

      Объект Intl.NumberFormat является конструктором объектов, включающих языка-зависимое форматирование чисел.

      Синтаксис

      diff --git a/files/ru/web/javascript/reference/global_objects/json/index.html b/files/ru/web/javascript/reference/global_objects/json/index.html index 2f1befd589..14b96afbc2 100644 --- a/files/ru/web/javascript/reference/global_objects/json/index.html +++ b/files/ru/web/javascript/reference/global_objects/json/index.html @@ -53,7 +53,7 @@ eval(code); // ошибка
    СпецфикацияСпецификация Статус Комментарий
    -

    Ниже представлен полный синтаскис JSON:

    +

    Ниже представлен полный синтаксис JSON:

    JSON = null
         or true or false
    diff --git a/files/ru/web/javascript/reference/global_objects/json/parse/index.html b/files/ru/web/javascript/reference/global_objects/json/parse/index.html
    index febd8ba943..3216ab34e2 100644
    --- a/files/ru/web/javascript/reference/global_objects/json/parse/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/json/parse/index.html
    @@ -135,7 +135,7 @@ JSON.parse('{"1": 1, "2": 2, "3": {"4": 4, "5": {"6": 6}}}', function(k, v) {
     

    На основе таблицы совместимости Kangax.

    Примечания по Gecko

    -

    Начиная с Gecko 29 {{geckoRelease("29")}}, при передаче некорректной строки JSON выдаётся более подробное собщение об ошибке, содержащее номер строки и колонки, в которых была обнаружена ошибка разбора. Это полезно при отладке больших данных JSON.

    +

    Начиная с Gecko 29 {{geckoRelease("29")}}, при передаче некорректной строки JSON выдаётся более подробное сообщение об ошибке, содержащее номер строки и колонки, в которых была обнаружена ошибка разбора. Это полезно при отладке больших данных JSON.

    JSON.parse('[1, 2, 3,]');
     // SyntaxError: JSON.parse: unexpected character at
     // line 1 column 10 of the JSON data
    diff --git a/files/ru/web/javascript/reference/global_objects/map/delete/index.html b/files/ru/web/javascript/reference/global_objects/map/delete/index.html
    index 749996f85b..442bab843d 100644
    --- a/files/ru/web/javascript/reference/global_objects/map/delete/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/map/delete/index.html
    @@ -16,7 +16,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Map/delete
     
     
    {{EmbedInteractiveExample("pages/js/map-prototype-delete.html")}}
    - +

    Синтаксис

    @@ -31,7 +31,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Map/delete

    Возвращаемое значение

    -

    true если элемент существовал в {{jsxref("Map")}} и он был удален или false если элемента с такким ключом не было.

    +

    true если элемент существовал в {{jsxref("Map")}} и он был удален или false если элемента с таким ключом не было.

    Примеры

    @@ -68,7 +68,7 @@ myMap.has("bar"); // Возвращает false. Элемента "bar" бо

    Совместимость с браузерами

    - +

    {{Compat("javascript.builtins.Map.delete")}}

    diff --git a/files/ru/web/javascript/reference/global_objects/map/entries/index.html b/files/ru/web/javascript/reference/global_objects/map/entries/index.html index fd34bd9a6b..ccdd07a182 100644 --- a/files/ru/web/javascript/reference/global_objects/map/entries/index.html +++ b/files/ru/web/javascript/reference/global_objects/map/entries/index.html @@ -15,7 +15,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Map/entries

    2. Ознакомьтесь с руководством https://github.com/mdn/interactive-examples/blob/master/CONTRIBUTING.md

    -

    3. Напишите свой пример и отравьте нам запрос на извлечение.

    +

    3. Напишите свой пример и отправьте нам запрос на извлечение.

    Синтаксис

    diff --git a/files/ru/web/javascript/reference/global_objects/map/index.html b/files/ru/web/javascript/reference/global_objects/map/index.html index 8e6551addf..1104571ff4 100644 --- a/files/ru/web/javascript/reference/global_objects/map/index.html +++ b/files/ru/web/javascript/reference/global_objects/map/index.html @@ -193,7 +193,7 @@ console.log(Array.from(myMap)); // Выведет точно такой же м console.log(Array.from(myMap.keys())); // Выведет ['key1', 'key2']
    -

    Клонирование и сляние Map

    +

    Клонирование и слияние Map

     Равно как и {{jsxref("Array", "Массивы")}}, Map могут быть клонированы:

    @@ -273,7 +273,7 @@ console.log(merged.get(3)); // three

    Совместимость с браузерами

    - +

    {{Compat("javascript.builtins.Map")}}

    diff --git a/files/ru/web/javascript/reference/global_objects/math/clz32/index.html b/files/ru/web/javascript/reference/global_objects/math/clz32/index.html index 1239cca78e..6a2d796519 100644 --- a/files/ru/web/javascript/reference/global_objects/math/clz32/index.html +++ b/files/ru/web/javascript/reference/global_objects/math/clz32/index.html @@ -35,9 +35,9 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/clz32

    Если значение x не является числом, оно будет сначала преобразовано в число, а потом в 32-битное беззнаковое целое число.

    -

    Если преобразованое 32-битное беззнаковое целое число равно 0, метод вернёт 32, поскольку все биты в числе равны 0.

    +

    Если преобразованное 32-битное беззнаковое целое число равно 0, метод вернёт 32, поскольку все биты в числе равны 0.

    -

    Этот метод особено полезен для систем, которые компилируются в JS, например, для Emscripten.

    +

    Этот метод особенно полезен для систем, которые компилируются в JS, например, для Emscripten.

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/math/index.html b/files/ru/web/javascript/reference/global_objects/math/index.html index 337e2229b2..bceb849d92 100644 --- a/files/ru/web/javascript/reference/global_objects/math/index.html +++ b/files/ru/web/javascript/reference/global_objects/math/index.html @@ -82,7 +82,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math
    {{jsxref("Global_Objects/Math/floor", "Math.floor(x)")}}
    Возвращает значение числа, округлённое к меньшему целому.
    {{jsxref("Global_Objects/Math/fround", "Math.fround(x)")}} {{experimental_inline}}
    -
    Возвращает ближайшее число с плавающей запятой одинарной точности, представляюще это число.
    +
    Возвращает ближайшее число с плавающей запятой одинарной точности, представляющие это число.
    {{jsxref("Global_Objects/Math/hypot", "Math.hypot([x[, y[, …]]])")}} {{experimental_inline}}
    Возвращает квадратный корень из суммы квадратов своих аргументов.
    {{jsxref("Global_Objects/Math/imul", "Math.imul(x)")}} {{experimental_inline}}
    diff --git a/files/ru/web/javascript/reference/global_objects/math/random/index.html b/files/ru/web/javascript/reference/global_objects/math/random/index.html index 7b25fda4d1..4fc7d8f250 100644 --- a/files/ru/web/javascript/reference/global_objects/math/random/index.html +++ b/files/ru/web/javascript/reference/global_objects/math/random/index.html @@ -56,12 +56,12 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/random }
    -

    Может показаться заманчивым использовать Math.round() для округления, но это может сделать распределение неравномерным, что может оказаться неприемлимым для ваших нужд.

    +

    Может показаться заманчивым использовать Math.round() для округления, но это может сделать распределение неравномерным, что может оказаться неприемлемым для ваших нужд.

    Получение случайного целого числа в заданном интервале, включительно

    -

    Функция getRandomInt() выше включает минимальное значение, но не включает максимальное. Но что если вам нужно, чтобы влючалось и минимальное, и максимальное значение? Функция getRandomIntInclusive() решает этот вопрос.

    +

    Функция getRandomInt() выше включает минимальное значение, но не включает максимальное. Но что если вам нужно, чтобы включалось и минимальное, и максимальное значение? Функция getRandomIntInclusive() решает этот вопрос.

    function getRandomIntInclusive(min, max) {
       min = Math.ceil(min);
    diff --git a/files/ru/web/javascript/reference/global_objects/number/index.html b/files/ru/web/javascript/reference/global_objects/number/index.html
    index b8ea32f7d5..71dc320d34 100644
    --- a/files/ru/web/javascript/reference/global_objects/number/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/number/index.html
    @@ -64,7 +64,7 @@ var b = Number('123'); // b === 123 is true
     
     
    {{jsxref("Number.isNaN()")}} {{experimental_inline}}
    -
    Определяет, является ли переданнное значение значением {{jsxref("Global_Objects/NaN", "NaN")}}.
    +
    Определяет, является ли переданное значение значением {{jsxref("Global_Objects/NaN", "NaN")}}.
    {{jsxref("Number.isFinite()")}} {{experimental_inline}}
    Определяет, является ли переданное значение конечным числом.
    {{jsxref("Number.isInteger()")}} {{experimental_inline}}
    diff --git a/files/ru/web/javascript/reference/global_objects/number/negative_infinity/index.html b/files/ru/web/javascript/reference/global_objects/number/negative_infinity/index.html index 7f65de76b3..b96fb93d07 100644 --- a/files/ru/web/javascript/reference/global_objects/number/negative_infinity/index.html +++ b/files/ru/web/javascript/reference/global_objects/number/negative_infinity/index.html @@ -33,7 +33,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Number/NEGATIVE_INFINITY

    Примеры

    Пример: использование NEGATIVE_INFINITY

    -

    В следующем примере переменной smallNumber присваивается значение, меньшее минимального. Когда выполняется инструкция {{jsxref("Statements/if...else", "if")}}, переменная smallNumber имеет значение -Infinity, так что перед продолжением вычислений она устанавливается в более приемлимое значение.

    +

    В следующем примере переменной smallNumber присваивается значение, меньшее минимального. Когда выполняется инструкция {{jsxref("Statements/if...else", "if")}}, переменная smallNumber имеет значение -Infinity, так что перед продолжением вычислений она устанавливается в более приемлемое значение.

    var smallNumber = (-Number.MAX_VALUE) * 2;
     
     if (smallNumber == Number.NEGATIVE_INFINITY) {
    diff --git a/files/ru/web/javascript/reference/global_objects/number/parseint/index.html b/files/ru/web/javascript/reference/global_objects/number/parseint/index.html
    index 41d25d27fe..2840299c37 100644
    --- a/files/ru/web/javascript/reference/global_objects/number/parseint/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/number/parseint/index.html
    @@ -37,7 +37,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Number/parseInt
     
     
    Number.parseInt === parseInt; // true
    -

    Пожалуйства, обратитесь к документации по глобальной функции {{jsxref("Global_Objects/parseInt", "parseInt()")}} для просмотра подробного описания и примеров.

    +

    Пожалуйста, обратитесь к документации по глобальной функции {{jsxref("Global_Objects/parseInt", "parseInt()")}} для просмотра подробного описания и примеров.

    Полифил

    diff --git a/files/ru/web/javascript/reference/global_objects/number/positive_infinity/index.html b/files/ru/web/javascript/reference/global_objects/number/positive_infinity/index.html index fd87dde80a..b3042195bb 100644 --- a/files/ru/web/javascript/reference/global_objects/number/positive_infinity/index.html +++ b/files/ru/web/javascript/reference/global_objects/number/positive_infinity/index.html @@ -33,7 +33,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Number/POSITIVE_INFINITY

    Примеры

    Пример: использование POSITIVE_INFINITY

    -

    В следующем примере переменной bigNumber присваивается значение, большее максимального. Когда выполняется инструкция {{jsxref("Statements/if...else", "if")}}, переменная bigNumber имеет значение Infinity, так что перед продолжением вычислений она устанавливается в более приемлимое значение.

    +

    В следующем примере переменной bigNumber присваивается значение, большее максимального. Когда выполняется инструкция {{jsxref("Statements/if...else", "if")}}, переменная bigNumber имеет значение Infinity, так что перед продолжением вычислений она устанавливается в более приемлемое значение.

    var bigNumber = Number.MAX_VALUE * 2;
     
     if (bigNumber == Number.POSITIVE_INFINITY) {
    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 876a483319..c607e3bdee 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
    @@ -71,7 +71,7 @@ console.log('Является ли rect экземпляром Shape? ' + (rect
     rect.move(1, 1); // выведет 'Фигура переместилась.'
     
    -

    Если вы хотите унаследоваться от нескольких объектов, то это возможно сделать при помощи примесей.

    +

    Если вы хотите наследоваться от нескольких объектов, то это возможно сделать при помощи примесей.

    function MyClass() {
       SuperClass.call(this);
    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 a29d530a21..54b342bb89 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
    @@ -363,7 +363,7 @@ arc.getArchive(); // [{ val: 11 }, { val: 13 }]
     
     

    Переопределение свойства length на объекте Array

    -

    На массивах возможно переопределить свойство {{jsxref("Array.length", "length")}}, при условии соблюдения обычных ограничений на переопределение. (Изначально свойство {{jsxref("Array.length", "length")}} является ненастраиваемым, неперечисляемым и записываемым. Таким образом, на неизменнённом массиве возможно изменить значение свойства {{jsxref("Array.length", "length")}} либо сделать его незаписываемым. Его перечисляемость или настраиваемость изменить нельзя, так же как и его записываемость, если оно сделано не записываемым.) Однако не все браузеры поддерживают такое переопределение.

    +

    На массивах возможно переопределить свойство {{jsxref("Array.length", "length")}}, при условии соблюдения обычных ограничений на переопределение. (Изначально свойство {{jsxref("Array.length", "length")}} является ненастраиваемым, неперечисляемым и записываемым. Таким образом, на неизмененном массиве возможно изменить значение свойства {{jsxref("Array.length", "length")}} либо сделать его незаписываемым. Его перечисляемость или настраиваемость изменить нельзя, так же как и его записываемость, если оно сделано не записываемым.) Однако не все браузеры поддерживают такое переопределение.

    Firefox с версии 4 по версию 22 бросает исключение {{jsxref("Global_Objects/TypeError", "TypeError")}} на любую попытку (вне зависимости от того, разрешена ли она или нет) переопределить свойство {{jsxref("Array.length", "length")}} массива.

    diff --git a/files/ru/web/javascript/reference/global_objects/object/entries/index.html b/files/ru/web/javascript/reference/global_objects/object/entries/index.html index 505065970b..87a9de90b8 100644 --- a/files/ru/web/javascript/reference/global_objects/object/entries/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/entries/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/entries ---
    {{JSRef}}
    -

    Object.entries() метод возвращает массив собственных перечисляемых свойств указанного объекта в формате [key, value], в том же порядке, что и в цикле {{jsxref("Statements/for...in", "for...in")}} (разница в том, что for-in перечисляет свойства из цепочки прототипов). Порядок элементов в массиве который возвращается Object.entries() не зависит от того как объект обьявлен. Если существует необходимость в определенном порядке, то  массив должен быть отсортирован до вызова метода, например Object.entries(obj).sort((a, b) => a[0] - b[0]);.

    +

    Object.entries() метод возвращает массив собственных перечисляемых свойств указанного объекта в формате [key, value], в том же порядке, что и в цикле {{jsxref("Statements/for...in", "for...in")}} (разница в том, что for-in перечисляет свойства из цепочки прототипов). Порядок элементов в массиве который возвращается Object.entries() не зависит от того как объект объявлен. Если существует необходимость в определенном порядке, то  массив должен быть отсортирован до вызова метода, например Object.entries(obj).sort((a, b) => a[0] - b[0]);.

    {{EmbedInteractiveExample("pages/js/object-entries.html")}}

    @@ -26,7 +26,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/entries

    Описание

    -

    Object.entries() возвращает массив, элементами которого являются массивы, соответсвующие перечисляемому свойству пары [key, value], найденной прямо в object. Порядок свойств тот же, что и при прохождении циклом по свойствам объекта вручную.

    +

    Object.entries() возвращает массив, элементами которого являются массивы, соответствующие перечисляемому свойству пары [key, value], найденной прямо в object. Порядок свойств тот же, что и при прохождении циклом по свойствам объекта вручную.

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/object/fromentries/index.html b/files/ru/web/javascript/reference/global_objects/object/fromentries/index.html index 6935cd3ec6..7bf1d17719 100644 --- a/files/ru/web/javascript/reference/global_objects/object/fromentries/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/fromentries/index.html @@ -27,13 +27,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/fromEntries
    Итерируемый объект, такой как {{jsxref("Array")}} или {{jsxref("Map")}} или другие объекты, реализующие iterable протокол.
    -

    Возращаемое значение

    +

    Возвращаемое значение

    Новый объект, свойства которого задаются записями iterable.

    Описание

    -

    Метод Object.fromEntries() принимает список пар ключ-значение и возвращает новый объект, свойства которого задаются этими записями. Ожидается, что аргумент iterable будет объектом, который реализует метод @@iterator, который возращает объект итератора, который создает двуэлементный массивоподобный объект, первый элемент которого является значением, которое будет использоваться в качестве ключа свойства, а второй элемент — значением связанного с этим ключом свойства.

    +

    Метод Object.fromEntries() принимает список пар ключ-значение и возвращает новый объект, свойства которого задаются этими записями. Ожидается, что аргумент iterable будет объектом, который реализует метод @@iterator, который возвращает объект итератора, который создает двухэлементный массивоподобный объект, первый элемент которого является значением, которое будет использоваться в качестве ключа свойства, а второй элемент — значением связанного с этим ключом свойства.

    Object.fromEntries() выполняет процедуру, обратную {{jsxref("Object.entries()")}}.

    diff --git a/files/ru/web/javascript/reference/global_objects/object/getownpropertydescriptors/index.html b/files/ru/web/javascript/reference/global_objects/object/getownpropertydescriptors/index.html index 3b1c545f1b..1700aa0e2c 100644 --- a/files/ru/web/javascript/reference/global_objects/object/getownpropertydescriptors/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/getownpropertydescriptors/index.html @@ -20,7 +20,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDes
    Объект, для которого нужно получить все собственные дескрипторы свойств.
    -

    Возращаемое значение

    +

    Возвращаемое значение

    Объект, содержащий все собственные дескрипторы свойств объекта. Может быть пустой объект, если нет свойств.

    @@ -51,7 +51,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDes

    Создание поверхностного клона

    -

    В то время как метод {{jsxref("Object.assign()")}} будет только копировать перечисяемые и собственные свойствва из исходного объекат в целевой объект, вы можете использовать этот метод и {{jsxref("Object.create()")}} для поверхностного копирования между двумя неизвестными объектами:

    +

    В то время как метод {{jsxref("Object.assign()")}} будет только копировать перечисляемые и собственные свойства из исходного объекта в целевой объект, вы можете использовать этот метод и {{jsxref("Object.create()")}} для поверхностного копирования между двумя неизвестными объектами:

    Object.create(
       Object.getPrototypeOf(obj),
    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 540fddb350..6c5e7e11d4 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
    @@ -127,7 +127,7 @@ String.prototype                   // код ES6
     
     

    Примечания по Opera

    -

    Хотя старые версии Opera и не поддерживают меотод Object.getPrototypeOf(), Opera поддерживает нестандартное свойство {{jsxref("Object.proto", "__proto__")}}, начиная с версии Opera 10.50.

    +

    Хотя старые версии Opera и не поддерживают метод Object.getPrototypeOf(), Opera поддерживает нестандартное свойство {{jsxref("Object.proto", "__proto__")}}, начиная с версии Opera 10.50.

    Смотрите также

    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 c1fa2f6464..152b8989c2 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 @@ -52,7 +52,7 @@ o.hasOwnProperty('prop'); // вернёт false

    Пример: собственные и унаследованные свойства

    -

    Следующий пример показывает разницу между собственными свойствами и свойствами, унаследоваными через цепочку прототипов:

    +

    Следующий пример показывает разницу между собственными свойствами и свойствами, унаследованными через цепочку прототипов:

    o = new Object();
     o.prop = 'существует';
    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 0286dff0dd..0b63883b55 100644
    --- a/files/ru/web/javascript/reference/global_objects/object/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/object/index.html
    @@ -37,7 +37,7 @@ new Object([value])
     
     

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

    -

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

    +

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

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

    @@ -68,7 +68,7 @@ new Object([value])
    {{jsxref("Object.getOwnPropertyNames()")}}
    Возвращает массив, содержащий имена всех переданных объекту собственных перечисляемых и неперечисляемых свойств.
    {{jsxref("Object.getOwnPropertySymbols()")}}
    -
    Возвращает массив всех символьных свойств, найденных непосредственно в переданом объекте.
    +
    Возвращает массив всех символьных свойств, найденных непосредственно в переданном объекте.
    {{jsxref("Object.getPrototypeOf()")}}
    Возвращает прототип указанного объекта.
    {{jsxref("Object.is()")}}
    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 3ee717a370..5d0cfb75dc 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 @@ -26,7 +26,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/proto

    Использование свойства __proto__ вызывает споры и многих оно разочаровало. Ранее оно никогда не включалось в спецификацию EcmaScript, но современные браузеры всё равно решили его реализовать. Сегодня свойство __proto__ стандартизировано в спецификации ECMAScript 6 и будет поддерживаться в будущем. Тем не менее, изменение прототипа [[Prototype]] объекта всё ещё остаётся медленной операцией, которую следует избегать, если вы беспокоитесь о производительности.

    -

    Свойство __proto__ также может использоваться при определении литерала объекта, устанавливая прототип [[Prototype]] объекта при его создании. Этот способ может рассматриваться как альтернатива методу {{jsxref("Object.create()")}}. Смотрите также литеральный синтаскис инициализации объекта.

    +

    Свойство __proto__ также может использоваться при определении литерала объекта, устанавливая прототип [[Prototype]] объекта при его создании. Этот способ может рассматриваться как альтернатива методу {{jsxref("Object.create()")}}. Смотрите также литеральный синтаксис инициализации объекта.

    Синтаксис

    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 6514429ca6..0f21a25cfd 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 @@ -29,7 +29,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/seal

    По умолчанию, объекты являются {{jsxref("Object.isExtensible()", "расширяемыми", "", 1)}} (к ним могут добавляться новые свойства). Запечатывание объекта предотвращает добавление к нему новых свойств и делает все существующие свойства не настраиваемыми. Оно делает все свойства объекта фиксированными и неизменными. Пометка всех свойств объекта как не настраиваемых также предотвращает их преобразование из свойств данных в свойства доступа и наоборот, но не предотвращает изменение значения свойств данных. Попытки удаления или добавления свойств к запечатанному объекту, либо преобразования свойств данных в свойства доступа и наоборот, будут терпеть неудачу, либо молча, либо с выбрасыванием исключения {{jsxref("Global_Objects/TypeError", "TypeError")}} (как правило, но не обязательно, это происходит в {{jsxref("Strict_mode", "строгом режиме", "", 1)}}).

    -

    Цепочка прототипов не затрагивается. Однако, свойство {{jsxref("Object.proto", "__proto__")}} {{deprecated_inline}} также запечатыватся.

    +

    Цепочка прототипов не затрагивается. Однако, свойство {{jsxref("Object.proto", "__proto__")}} {{deprecated_inline}} также запечатываться.

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/object/values/index.html b/files/ru/web/javascript/reference/global_objects/object/values/index.html index 05dccc80b0..38bfcb624a 100644 --- a/files/ru/web/javascript/reference/global_objects/object/values/index.html +++ b/files/ru/web/javascript/reference/global_objects/object/values/index.html @@ -31,7 +31,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/values

    Описание

    -

    Object.values() возвращает массив, чьи элементы это значения перечисляемых свойств найденых в объекте. Порядок такой же как если пройтись по объекту циклом вручную.

    +

    Object.values() возвращает массив, чьи элементы это значения перечисляемых свойств найденных в объекте. Порядок такой же как если пройтись по объекту циклом вручную.

    Примеры

    @@ -58,7 +58,7 @@ console.log(Object.values("foo")); // ['f', 'o', 'o']

    Полифил

    -

    Для добавления совместимости Object.values со старым окружением, которое не поддерживает нативно его, вы можете найти полифил здесь tc39/proposal-object-values-entries или в es-shims/Object.values репозитарии.

    +

    Для добавления совместимости Object.values со старым окружением, которое не поддерживает нативно его, вы можете найти полифил здесь tc39/proposal-object-values-entries или в es-shims/Object.values репозитории.

    Спецификации

    diff --git a/files/ru/web/javascript/reference/global_objects/promise/all/index.html b/files/ru/web/javascript/reference/global_objects/promise/all/index.html index 9d8fba83b6..b6291344c2 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/all/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/all/index.html @@ -33,7 +33,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/all

    Promise.all возвращает массив значений от всех обещаний, которые были ему переданы. Возвращаемый массив значений сохраняет порядок оригинального перечисляемого объекта, но не порядок выполнения обещаний. Если какой-либо элемент перечисляемого объекта не является обещанием, то он будет преобразован с помощью метода {{jsxref("Promise.resolve")}}.

    -

    Если одно из переданных обещаний будет отклонено, Promise.all будет немедлено отклонен со значением отклоненного обещания, не учитывая другие обещания, независимо выполнены они или нет. Если в качестве аргумента будет передан пустой массив, то Promise.all будет выполнен немедленно

    +

    Если одно из переданных обещаний будет отклонено, Promise.all будет немедленно отклонен со значением отклоненного обещания, не учитывая другие обещания, независимо выполнены они или нет. Если в качестве аргумента будет передан пустой массив, то Promise.all будет выполнен немедленно

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/promise/any/index.html b/files/ru/web/javascript/reference/global_objects/promise/any/index.html index 4d0a4baa67..5f14b9632a 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/any/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/any/index.html @@ -45,7 +45,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/any

    Исполнение с ошибкой(Rejection)

    -

    Елси все переданные "обещания" будут отклонены(rejected), Promise.any асинхронно будет отклонено в одном из двух вариантов (которые еще не были согласованы): либо

    +

    Если все переданные "обещания" будут отклонены(rejected), Promise.any асинхронно будет отклонено в одном из двух вариантов (которые еще не были согласованы): либо

    • Массив(Array) содержащий причины отклонения всех "обещаний" переданных в итерируемом объекте, либо
    • diff --git a/files/ru/web/javascript/reference/global_objects/promise/catch/index.html b/files/ru/web/javascript/reference/global_objects/promise/catch/index.html index dee70fbc24..91d7970796 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/catch/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/catch/index.html @@ -91,7 +91,7 @@ p1.then(function(value) { });
    -

    Ловим выброшеные исключения

    +

    Ловим выброшенные исключения

    // Выкидываемая ошибка вызовет метод catch
     var p1 = new Promise(function(resolve, reject) {
    @@ -102,7 +102,7 @@ p1.catch(function(e) {
       console.log(e); // "Uh-oh!"
     });
     
    -// Ошибки выброшеные из асинхронных функций не будут пойманы методом catch
    +// Ошибки выброшенные из асинхронных функций не будут пойманы методом catch
     var p2 = new Promise(function(resolve, reject) {
       setTimeout(function() {
         throw 'Uncaught Exception!';
    @@ -113,7 +113,7 @@ p2.catch(function(e) {
       console.log(e); // Никогда не вызовется
     });
     
    -// Ошибки выброшеные после выполнения обещания будут проигнорированны
    +// Ошибки выброшенные после выполнения обещания будут проигнорированны
     var p3 = new Promise(function(resolve, reject) {
       resolve();
       throw 'Silenced Exception!';
    diff --git a/files/ru/web/javascript/reference/global_objects/promise/finally/index.html b/files/ru/web/javascript/reference/global_objects/promise/finally/index.html
    index 5b4391ce47..b1a53051fa 100644
    --- a/files/ru/web/javascript/reference/global_objects/promise/finally/index.html
    +++ b/files/ru/web/javascript/reference/global_objects/promise/finally/index.html
    @@ -34,7 +34,7 @@ p.finally(() => {
     
     

    Описание

    -

    finally() может быть полезен, если необходимо приоизвести какие-либо вычисления или очистку, как только Promise (обещание) завершено, вне зависимости от результата.

    +

    finally() может быть полезен, если необходимо произвести какие-либо вычисления или очистку, как только Promise (обещание) завершено, вне зависимости от результата.

    finally() очень схож с вызовом .then(onFinally, onFinally), однако существует несколько различий:

    diff --git a/files/ru/web/javascript/reference/global_objects/promise/index.html b/files/ru/web/javascript/reference/global_objects/promise/index.html index 880b4eae36..f5701b4694 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/index.html @@ -52,7 +52,7 @@ new Promise(function(resolve, reject) { ... });

    -

    Примечание: говорят, что промис находится в состоянии завершен (settled) когда он или исполнен или отклонен, т.е. в любом состоянии, кроме ожидания (это лишь форма речи, не являющаяся настоящим состоянием промиса). Также можно встретить термин исполен (resolved) — это значит что промис завершен или "заблокирован" в ожидании завершения другого промиса. В статье состояния и fates приводится более подробное описание терминологии.

    +

    Примечание: говорят, что промис находится в состоянии завершен (settled) когда он или исполнен или отклонен, т.е. в любом состоянии, кроме ожидания (это лишь форма речи, не являющаяся настоящим состоянием промиса). Также можно встретить термин исполин (resolved) — это значит что промис завершен или "заблокирован" в ожидании завершения другого промиса. В статье состояния и fates приводится более подробное описание терминологии.

    Свойства

    diff --git a/files/ru/web/javascript/reference/global_objects/promise/reject/index.html b/files/ru/web/javascript/reference/global_objects/promise/reject/index.html index f234d5122f..9bb06a2115 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/reject/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/reject/index.html @@ -19,7 +19,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/reject

    Возвращаемое значение

    -

    Отклоненный с указаной причиной {{jsxref("Promise")}}.

    +

    Отклоненный с указанной причиной {{jsxref("Promise")}}.

    diff --git a/files/ru/web/javascript/reference/global_objects/promise/resolve/index.html b/files/ru/web/javascript/reference/global_objects/promise/resolve/index.html index 13a8ba9ee9..287938607d 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/resolve/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/resolve/index.html @@ -10,7 +10,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/resolve ---
    {{JSRef}}
    -

    Метод Promise.resolve(value) возвращает {{jsxref("Promise")}} выполненый с переданным значением. Если переданное значение является thenable - обьект (т.е. имеет метод {{jsxref("Promise.then", "\"then\" method")}}), возвращаемое обещание будет следовать thenable - обьекту, принимая свое состояние; в ином случае возвращаемое обещание будет выполнено с переданным значением.

    +

    Метод Promise.resolve(value) возвращает {{jsxref("Promise")}} выполненный с переданным значением. Если переданное значение является thenable - объект (т.е. имеет метод {{jsxref("Promise.then", "\"then\" method")}}), возвращаемое обещание будет следовать thenable - объекту, принимая свое состояние; в ином случае возвращаемое обещание будет выполнено с переданным значением.

    Синтаксис

    @@ -23,16 +23,16 @@ Promise.resolve(thenable);
    value
    -
    Значение с которым будет выполнено обещание. Может также быть обещанием или обьект подобный обещанию (thenable - обьект имеющий метод then).
    +
    Значение с которым будет выполнено обещание. Может также быть обещанием или объект подобный обещанию (thenable - объект имеющий метод then).
    -

    Возращаемое значение

    +

    Возвращаемое значение

    -

    Выполненый с переданным значением {{jsxref("Promise")}}.

    +

    Выполненный с переданным значением {{jsxref("Promise")}}.

    Описание

    -

    Метод Promise.resolve возвращает выполненое обещание (Promise).

    +

    Метод Promise.resolve возвращает выполненное обещание (Promise).

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/promise/then/index.html b/files/ru/web/javascript/reference/global_objects/promise/then/index.html index 2448a6ccdc..211b7692dd 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/then/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/then/index.html @@ -12,7 +12,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/then

    Метод then() возвращает {{jsxref("Promise")}}. Метод может принимать два аргумента: колбэк-функции для случаев выполнения и отклонения промиса.

    -

     Если один или оба аргумента отсутсвуют или их значения не функции, то then пропустит их и не выбросит ошибку. Если для Promise, который переходит в состояние выполнен или отклонен вызван метод then, и у данного метода нет нужного обработчика, то в таком случае then просто возвращает промис с состоянием начального Promise, для которого then был вызван.

    +

     Если один или оба аргумента отсутствуют или их значения не функции, то then пропустит их и не выбросит ошибку. Если для Promise, который переходит в состояние выполнен или отклонен вызван метод then, и у данного метода нет нужного обработчика, то в таком случае then просто возвращает промис с состоянием начального Promise, для которого then был вызван.

    Синтаксис

    diff --git a/files/ru/web/javascript/reference/global_objects/proxy/proxy/apply/index.html b/files/ru/web/javascript/reference/global_objects/proxy/proxy/apply/index.html index 81ea9d0605..abae363a95 100644 --- a/files/ru/web/javascript/reference/global_objects/proxy/proxy/apply/index.html +++ b/files/ru/web/javascript/reference/global_objects/proxy/proxy/apply/index.html @@ -56,7 +56,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Proxy/Proxy/apply

    Инварианты

    -

    Если следующие инваринаты нарушены, то прокси выбросит {{jsxref("TypeError")}}.

    +

    Если следующие инварианты нарушены, то прокси выбросит {{jsxref("TypeError")}}.

    Исходный объект target должен быть самовызываемым. То есть, это должна быть функция-объект.

    diff --git a/files/ru/web/javascript/reference/global_objects/proxy/proxy/get/index.html b/files/ru/web/javascript/reference/global_objects/proxy/proxy/get/index.html index 2d6be05af5..efdb5d799f 100644 --- a/files/ru/web/javascript/reference/global_objects/proxy/proxy/get/index.html +++ b/files/ru/web/javascript/reference/global_objects/proxy/proxy/get/index.html @@ -52,7 +52,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Proxy/Proxy/get

    Инварианты

    -

    Если следующие инваринаты нарушены, то прокси выбросит {{jsxref("TypeError")}}:

    +

    Если следующие инварианты нарушены, то прокси выбросит {{jsxref("TypeError")}}:

    • Значение, сообщаемое для свойства, должно быть таким же, как значение соответствующего свойства целевого объекта, если свойство целевого объекта является неперезаписываемым, не настраиваемым свойством собственных данных.
    • diff --git a/files/ru/web/javascript/reference/global_objects/proxy/proxy/set/index.html b/files/ru/web/javascript/reference/global_objects/proxy/proxy/set/index.html index 7e5ed05f0a..cd690d4d9a 100644 --- a/files/ru/web/javascript/reference/global_objects/proxy/proxy/set/index.html +++ b/files/ru/web/javascript/reference/global_objects/proxy/proxy/set/index.html @@ -30,7 +30,7 @@ original_slug: Web/JavaScript/Reference/Global_Objects/Proxy/handler/set
      target
      -
      Исходный обьект, который проксируется.
      +
      Исходный объект, который проксируется.
      property
      Имя свойства, в которое устанавливается значение value.
      value
      @@ -70,7 +70,7 @@ original_slug: Web/JavaScript/Reference/Global_Objects/Proxy/handler/set

      Инварианты

      -

      Если нарушены следующие инваринаты, то proxy выбросит {{jsxref("TypeError")}}:

      +

      Если нарушены следующие инварианты, то proxy выбросит {{jsxref("TypeError")}}:

      • Невозможно изменить значение свойства так, чтобы оно отличалось от значения соответствующего свойства целевого объекта, если соответствующее свойство целевого объекта не является доступным для записи и не настраиваемым свойством данных.
      • diff --git a/files/ru/web/javascript/reference/global_objects/reflect/apply/index.html b/files/ru/web/javascript/reference/global_objects/reflect/apply/index.html index 927f5b52b8..58ab8b7c4b 100644 --- a/files/ru/web/javascript/reference/global_objects/reflect/apply/index.html +++ b/files/ru/web/javascript/reference/global_objects/reflect/apply/index.html @@ -14,7 +14,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Reflect/apply
        {{EmbedInteractiveExample("pages/js/reflect-apply.html")}}
        - +

        Синтаксис

        diff --git a/files/ru/web/javascript/reference/global_objects/reflect/ownkeys/index.html b/files/ru/web/javascript/reference/global_objects/reflect/ownkeys/index.html index a218116d09..8579639a52 100644 --- a/files/ru/web/javascript/reference/global_objects/reflect/ownkeys/index.html +++ b/files/ru/web/javascript/reference/global_objects/reflect/ownkeys/index.html @@ -29,7 +29,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Reflect/ownKeys

        Исключения

        -

        Выбрасывает ислючение {{jsxref("TypeError")}}, если target не является {{jsxref("Object")}}.

        +

        Выбрасывает исключение {{jsxref("TypeError")}}, если target не является {{jsxref("Object")}}.

        Описание

        diff --git a/files/ru/web/javascript/reference/global_objects/regexp/@@search/index.html b/files/ru/web/javascript/reference/global_objects/regexp/@@search/index.html index ee37017a2a..9ed264146d 100644 --- a/files/ru/web/javascript/reference/global_objects/regexp/@@search/index.html +++ b/files/ru/web/javascript/reference/global_objects/regexp/@@search/index.html @@ -34,7 +34,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/@@search

        Описание

        -

        Этот метод вызывается внутрнее в {{jsxref("String.prototype.search()")}}. Например, два следующих примера вернут один и тот же результат.

        +

        Этот метод вызывается внутреннее в {{jsxref("String.prototype.search()")}}. Например, два следующих примера вернут один и тот же результат.

        'abc'.search(/a/);
         
        @@ -99,7 +99,7 @@ console.log(result); // 3
         

        Совместимость с браузерами

        - +

        {{Compat("javascript.builtins.RegExp.@@search")}}

        diff --git a/files/ru/web/javascript/reference/global_objects/regexp/@@split/index.html b/files/ru/web/javascript/reference/global_objects/regexp/@@split/index.html index 8a0e07c804..7a6a34cec0 100644 --- a/files/ru/web/javascript/reference/global_objects/regexp/@@split/index.html +++ b/files/ru/web/javascript/reference/global_objects/regexp/@@split/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/@@split ---
        {{JSRef}}
        -

        [@@split]() метод делит объект {{jsxref("String")}}  в массив сторок, путём разбиения строки на подстроки.

        +

        [@@split]() метод делит объект {{jsxref("String")}}  в массив строк, путём разбиения строки на подстроки.

        {{EmbedInteractiveExample("pages/js/regexp-prototype-@@split.html")}}
        @@ -22,7 +22,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/@@split
        Цель разбиения.
        limit
        -

        Необязательное. Целое число ограничивающее кол-во рабиений. [@@split]() метод разбивает все совпадения this RegExp шаблона, до тех пор пока не достигнет числа limit или строка будет короче this шаблона.

        +

        Необязательное. Целое число ограничивающее кол-во разбиений. [@@split]() метод разбивает все совпадения this RegExp шаблона, до тех пор пока не достигнет числа limit или строка будет короче this шаблона.

      diff --git a/files/ru/web/javascript/reference/global_objects/regexp/index.html b/files/ru/web/javascript/reference/global_objects/regexp/index.html index 9a864bee32..20b0d9b10e 100644 --- a/files/ru/web/javascript/reference/global_objects/regexp/index.html +++ b/files/ru/web/javascript/reference/global_objects/regexp/index.html @@ -244,7 +244,7 @@ var re = new RegExp('\\w+');

      Сопоставляется c началом ввода. Если установлен флаг многострочности, также сопоставляется с позицией сразу за символом переноса строки.

      -

      Например, шаблон /^Б/ не сопоставляется с буквой «Б» в строке «буква Б», но сопоставляеся с первой буквой «Б» в строке «Буква Б».

      +

      Например, шаблон /^Б/ не сопоставляется с буквой «Б» в строке «буква Б», но сопоставляется с первой буквой «Б» в строке «Буква Б».

      @@ -252,7 +252,7 @@ var re = new RegExp('\\w+');

      Сопоставляется c концом ввода. Если установлен флаг многострочности, также сопоставляется с позицией сразу перед символом переноса строки.

      -

      Например, шаблон /т$/ не сопоставляется с буквой «т» в слове «кормить», но сопоставляеся с ней в слове «кормит».

      +

      Например, шаблон /т$/ не сопоставляется с буквой «т» в слове «кормить», но сопоставляется с ней в слове «кормит».

      @@ -285,7 +285,7 @@ var re = new RegExp('\\w+');

      Сопоставляется с x и запоминает сопоставление. Называется «захватывающие скобки».

      -

      Например, шаблон /(foo)/ сопоставлется с подстрокой «foo» и запоминает её в строке «foo bar». Сопоставленую подстроку можно достать из элементов [1], ..., [n] результирующего массива или из предопределённых свойств $1, ..., $9 объекта RegExp.

      +

      Например, шаблон /(foo)/ сопоставляется с подстрокой «foo» и запоминает её в строке «foo bar». Сопоставленную подстроку можно достать из элементов [1], ..., [n] результирующего массива или из предопределённых свойств $1, ..., $9 объекта RegExp.

      Захват групп ведёт к проседанию производительности. Если вам не нужно повторно ссылаться на захваченную подстроку, лучше использовать скобки без захвата (смотрите ниже).

      @@ -350,12 +350,12 @@ var re = new RegExp('\\w+'); x(?=y) - Сопоставлется с x, только если за x следует y. Например, шаблон /Джек(?=Шпрот)/ сопоставлется со строкой «Джек» только если за ней следует строка «Шпрот». Шаблон /Джек(?=Шпрот|Мороз)/ сопоставлется со строкой «Джек» только если за ней следуют строки «Шпрот» или «Мороз». Однако, ни «Шпрот», ни «Мороз» не являются частью результата сопоставления. + Сопоставляется с x, только если за x следует y. Например, шаблон /Джек(?=Шпрот)/ сопоставляется со строкой «Джек» только если за ней следует строка «Шпрот». Шаблон /Джек(?=Шпрот|Мороз)/ сопоставляется со строкой «Джек» только если за ней следуют строки «Шпрот» или «Мороз». Однако, ни «Шпрот», ни «Мороз» не являются частью результата сопоставления. x(?!y) -

      Сопоставлется с x, только если за x не следует y. Например, шаблон /\d+(?!\.)/ сопоставляется с числом только если за ним не следует десятичная запятая.

      +

      Сопоставляется с x, только если за x не следует y. Например, шаблон /\d+(?!\.)/ сопоставляется с числом только если за ним не следует десятичная запятая.

      Выражение /\d+(?!\.)/.exec('3.141') сопоставится с «141» но не с «3.141».

      @@ -417,7 +417,7 @@ var re = new RegExp('\\w+');

      Где n и m являются целыми положительными числами. Сопоставляется по крайней мере с n но не более, чем с m вхождениями предшествующего элемента x.

      -

      Например, шаблон /о{1,3}/ ни с чем не сопоставится в слове «кнфета», с символом «о» в слове «конфета», с двумя символами «о» в слове «коонфета» и с первыми тремя символами «о» в слове «кооооооонфета». Обратите внимание, что при сопоставлении со словом «кооооооонфета» сопоставиласть только подстрока «ооо», хотя слово содержало гораздо больше символов «о».

      +

      Например, шаблон /о{1,3}/ ни с чем не сопоставится в слове «кнфета», с символом «о» в слове «конфета», с двумя символами «о» в слове «коонфета» и с первыми тремя символами «о» в слове «кооооооонфета». Обратите внимание, что при сопоставлении со словом «кооооооонфета» сопоставимость только подстрока «ооо», хотя слово содержало гораздо больше символов «о».

      diff --git a/files/ru/web/javascript/reference/global_objects/regexp/input/index.html b/files/ru/web/javascript/reference/global_objects/regexp/input/index.html index 1e85d92013..ffa29e21fc 100644 --- a/files/ru/web/javascript/reference/global_objects/regexp/input/index.html +++ b/files/ru/web/javascript/reference/global_objects/regexp/input/index.html @@ -34,7 +34,7 @@ RegExp.$_; // "hi world!"

      Спецификация

      -

      Не стандартизированно. Не является частью какой-либо спецификации.

      +

      Не стандартизированной. Не является частью какой-либо спецификации.

      Поддержка в браузерах

      diff --git a/files/ru/web/javascript/reference/global_objects/regexp/lastmatch/index.html b/files/ru/web/javascript/reference/global_objects/regexp/lastmatch/index.html index 94e140a0a8..3d86f2958e 100644 --- a/files/ru/web/javascript/reference/global_objects/regexp/lastmatch/index.html +++ b/files/ru/web/javascript/reference/global_objects/regexp/lastmatch/index.html @@ -33,7 +33,7 @@ RegExp['$&']; // "hi"

      Спецификация

      -

      Не стандартизированно. Не является частью какой-либо спецификации.

      +

      Не стандартизированной. Не является частью какой-либо спецификации.

      Поддержка в браузерах

      diff --git a/files/ru/web/javascript/reference/global_objects/regexp/n/index.html b/files/ru/web/javascript/reference/global_objects/regexp/n/index.html index a785e92f01..4873c56af0 100644 --- a/files/ru/web/javascript/reference/global_objects/regexp/n/index.html +++ b/files/ru/web/javascript/reference/global_objects/regexp/n/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/n ---
      {{JSRef}} {{non-standard_header}}
      -

      Нестандартные свойства $1, $2, $3, $4, $5, $6, $7, $8, $9 являются статическими и доступными только для чтения свойствами регулярных выражений, которые содержат найденые подстроки, обернутые в скобки.

      +

      Нестандартные свойства $1, $2, $3, $4, $5, $6, $7, $8, $9 являются статическими и доступными только для чтения свойствами регулярных выражений, которые содержат найденные подстроки, обернутые в скобки.

      Синтаксис

      @@ -28,7 +28,7 @@ RegExp.$9

      Количество возможных подстрок в круглых скобках неограничено, но объект RegExp может содержать в себе только последние 9. Вы можете получить доступ ко всем подстрокам, совпавшим с выражениями внутри круглых скобок, с помощью индексов возвращенного массива.

      -

      Эти свойства могу использоваться при замене текста в методе {{jsxref("String.replace")}}. Когда используете его, не добавляйте их в RegExp. Пример ниже демонстрирует правильное применение. Когда круглые скобки не включены в регулярное выражение, код интерпритирует такие значения, как $n буквально, как литерал (n - положительное число).

      +

      Эти свойства могу использоваться при замене текста в методе {{jsxref("String.replace")}}. Когда используете его, не добавляйте их в RegExp. Пример ниже демонстрирует правильное применение. Когда круглые скобки не включены в регулярное выражение, код интерпретирует такие значения, как $n буквально, как литерал (n - положительное число).

      Примеры

      @@ -45,7 +45,7 @@ RegExp.$2; // "Smith"

      Спецификация

      -

      Не стандартизированно. Не является частью какой-либо спецификации

      +

      Не стандартизированной. Не является частью какой-либо спецификации

      Совместимость с браузерами

      diff --git a/files/ru/web/javascript/reference/global_objects/regexp/unicode/index.html b/files/ru/web/javascript/reference/global_objects/regexp/unicode/index.html index 6f585f94f7..ea9db422df 100644 --- a/files/ru/web/javascript/reference/global_objects/regexp/unicode/index.html +++ b/files/ru/web/javascript/reference/global_objects/regexp/unicode/index.html @@ -21,7 +21,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/unicode

      Примеры

      -

      Испльзование свойства unicode

      +

      Использование свойства unicode

      var regex = new RegExp('\u{61}', 'u');
       
      diff --git a/files/ru/web/javascript/reference/global_objects/set/add/index.html b/files/ru/web/javascript/reference/global_objects/set/add/index.html
      index 44ac1e81b8..3f5defac49 100644
      --- a/files/ru/web/javascript/reference/global_objects/set/add/index.html
      +++ b/files/ru/web/javascript/reference/global_objects/set/add/index.html
      @@ -15,7 +15,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Set/add
       
       
      mySet.add(value);
      -

      Параметы

      +

      Параметры

      value
      diff --git a/files/ru/web/javascript/reference/global_objects/set/values/index.html b/files/ru/web/javascript/reference/global_objects/set/values/index.html index 115d300b53..4ac8abe40f 100644 --- a/files/ru/web/javascript/reference/global_objects/set/values/index.html +++ b/files/ru/web/javascript/reference/global_objects/set/values/index.html @@ -24,7 +24,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Set/values

      Примеры

      -

      Ипсользование values()

      +

      Использование values()

      var mySet = new Set();
       mySet.add('foo');
      diff --git a/files/ru/web/javascript/reference/global_objects/sharedarraybuffer/index.html b/files/ru/web/javascript/reference/global_objects/sharedarraybuffer/index.html
      index 884ab88fa1..d625a5a809 100644
      --- a/files/ru/web/javascript/reference/global_objects/sharedarraybuffer/index.html
      +++ b/files/ru/web/javascript/reference/global_objects/sharedarraybuffer/index.html
      @@ -21,7 +21,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer
       
       

      Возвращаемое значение

      -

      Новый объект SharedArrayBuffer указаной длины. Его содержимое после инициализаци равно 0.

      +

      Новый объект SharedArrayBuffer указанной длины. Его содержимое после инициализации равно 0.

      Описание

      @@ -49,7 +49,7 @@ worker.postMessage(sab);

      Конструкции требуют оператор new

      -

      Конструторы SharedArrayBuffer необходимо вызывать с помощью оператора {{jsxref("Operators/new", "new")}}. Вызов конструктора SharedArrayBuffer как функции без указания new, вызовет ошибку {{jsxref("TypeError")}}.

      +

      Конструкторы SharedArrayBuffer необходимо вызывать с помощью оператора {{jsxref("Operators/new", "new")}}. Вызов конструктора SharedArrayBuffer как функции без указания new, вызовет ошибку {{jsxref("TypeError")}}.

      var sab = SharedArrayBuffer(1024);
       // TypeError: вызов встроенного конструктора SharedArrayBuffer
      diff --git a/files/ru/web/javascript/reference/global_objects/string/charat/index.html b/files/ru/web/javascript/reference/global_objects/string/charat/index.html
      index c86dae26aa..6ca4193230 100644
      --- a/files/ru/web/javascript/reference/global_objects/string/charat/index.html
      +++ b/files/ru/web/javascript/reference/global_objects/string/charat/index.html
      @@ -103,7 +103,7 @@ function getWholeChar(str, i) {
         return false;
       }
       
      -

      В среде, поддерживающей JavaScript 1.7+ (например, в Firefox), который позволяет деструктуризующее присваивание, можно использовать более лаконичную и более гибкую альтернативу в том смысле, что она автоматически увеличивает счётчик (если символ гарантированно является суррогатной парой).

      +

      В среде, поддерживающей JavaScript 1.7+ (например, в Firefox), который позволяет деструктурирующее присваивание, можно использовать более лаконичную и более гибкую альтернативу в том смысле, что она автоматически увеличивает счётчик (если символ гарантированно является суррогатной парой).

      var str = 'A\uD87E\uDC04Z'; // Также можно использовать не-БМП символы напрямую
       for (var i = 0, chr; i < str.length; i++) {
         [chr, i] = getWholeCharAndI(str, i);
      diff --git a/files/ru/web/javascript/reference/global_objects/string/codepointat/index.html b/files/ru/web/javascript/reference/global_objects/string/codepointat/index.html
      index 4bd765f8a5..f14984662d 100644
      --- a/files/ru/web/javascript/reference/global_objects/string/codepointat/index.html
      +++ b/files/ru/web/javascript/reference/global_objects/string/codepointat/index.html
      @@ -27,7 +27,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/codePointAt
       
       
      pos
      -
      Позиция элемента в строке, чья кодовоя точка возвращается функцией.
      +
      Позиция элемента в строке, чья кодовая точка возвращается функцией.

      Описание

      diff --git a/files/ru/web/javascript/reference/global_objects/string/endswith/index.html b/files/ru/web/javascript/reference/global_objects/string/endswith/index.html index 7b8412880f..8ab2ff307d 100644 --- a/files/ru/web/javascript/reference/global_objects/string/endswith/index.html +++ b/files/ru/web/javascript/reference/global_objects/string/endswith/index.html @@ -13,7 +13,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/endsWith

      Сводка

      -

      Метод endsWith() позволяет определить, заканчивается ли строка символами указанными в скобках, возвращая, соотвественно, true или false.

      +

      Метод endsWith() позволяет определить, заканчивается ли строка символами указанными в скобках, возвращая, соответственно, true или false.

      Синтаксис

      diff --git a/files/ru/web/javascript/reference/global_objects/string/fontcolor/index.html b/files/ru/web/javascript/reference/global_objects/string/fontcolor/index.html index 549d0e2b54..53313478cf 100644 --- a/files/ru/web/javascript/reference/global_objects/string/fontcolor/index.html +++ b/files/ru/web/javascript/reference/global_objects/string/fontcolor/index.html @@ -29,7 +29,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/fontcolor

      Описание

      -

      Ксли вы выразили цвет в виде шестнадцатеричного триплета RGB, вы должны использовать формат rrggbb. Например, шестнадцатеричные значения RGB для оранжево-розового цвета такие: красный=FA, зелёный=80 и синий=72, так что RGB-триплет для оранжево-розового цвета будет следующим "FA8072".

      +

      Если вы выразили цвет в виде шестнадцатеричного триплета RGB, вы должны использовать формат rrggbb. Например, шестнадцатеричные значения RGB для оранжево-розового цвета такие: красный=FA, зелёный=80 и синий=72, так что RGB-триплет для оранжево-розового цвета будет следующим "FA8072".

      Примеры

      diff --git a/files/ru/web/javascript/reference/global_objects/string/index.html b/files/ru/web/javascript/reference/global_objects/string/index.html index 84a55baf89..bda7ae64c3 100644 --- a/files/ru/web/javascript/reference/global_objects/string/index.html +++ b/files/ru/web/javascript/reference/global_objects/string/index.html @@ -158,7 +158,7 @@ console.log(eval(s2)); // выведет строку '2 + 2'
      console.log(eval(s2.valueOf())); // выведет число 4
       
      -
      Примечание: для того, чтобы узнать больше о другом возможном подходе к строкам в JavaScript, прочитайте статью о StringView — C-подобном представлении строк на основе типизирванных массивов.
      +
      Примечание: для того, чтобы узнать больше о другом возможном подходе к строкам в JavaScript, прочитайте статью о StringView — C-подобном представлении строк на основе типизированных массивов.

      Свойства

      diff --git a/files/ru/web/javascript/reference/global_objects/string/match/index.html b/files/ru/web/javascript/reference/global_objects/string/match/index.html index ebcc53c574..2819776d46 100644 --- a/files/ru/web/javascript/reference/global_objects/string/match/index.html +++ b/files/ru/web/javascript/reference/global_objects/string/match/index.html @@ -166,7 +166,7 @@ console.log(matches_array);

      Примечания по Firefox

        -
      • Начиная с Gecko 27 {{geckoRelease(27)}}, этот метод был поправлен для соотвествия спецификации ECMAScript. При вызове метода match() с глобальным регулярным выражением, свойство {{jsxref("RegExp.lastIndex")}} (если оно определено) будет сбрасываться в 0 ({{bug(501739)}}).
      • +
      • Начиная с Gecko 27 {{geckoRelease(27)}}, этот метод был поправлен для соответствия спецификации ECMAScript. При вызове метода match() с глобальным регулярным выражением, свойство {{jsxref("RegExp.lastIndex")}} (если оно определено) будет сбрасываться в 0 ({{bug(501739)}}).

      Смотрите также

      diff --git a/files/ru/web/javascript/reference/global_objects/string/padend/index.html b/files/ru/web/javascript/reference/global_objects/string/padend/index.html index 31da2edad0..a380c3f50d 100644 --- a/files/ru/web/javascript/reference/global_objects/string/padend/index.html +++ b/files/ru/web/javascript/reference/global_objects/string/padend/index.html @@ -28,7 +28,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/padEnd

      Возвращаемое значение

      -

      Строка указанной длинны дополненная с помощью дополнительной строки в конце текуще строки.

      +

      Строка указанной длинны дополненная с помощью дополнительной строки в конце текущей строки.

      Примеры

      diff --git a/files/ru/web/javascript/reference/global_objects/string/replace/index.html b/files/ru/web/javascript/reference/global_objects/string/replace/index.html index debc32cf40..c5d45bca42 100644 --- a/files/ru/web/javascript/reference/global_objects/string/replace/index.html +++ b/files/ru/web/javascript/reference/global_objects/string/replace/index.html @@ -87,7 +87,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/replace $n или $nn - Символы n или nn являются десятичными цифрами, вставляет n-ную сопоставившуются подгруппу из объекта {{jsxref("Global_Objects/RegExp", "RegExp")}} в первом параметре. + Символы n или nn являются десятичными цифрами, вставляет n-ную сопоставившуюся подгруппу из объекта {{jsxref("Global_Objects/RegExp", "RegExp")}} в первом параметре. @@ -106,11 +106,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/replace match - Сопоставившаяся подстрока (cоответствует шаблону замены $&, описанному выше). + Сопоставившаяся подстрока (соответствует шаблону замены $&, описанному выше). p1, p2, ... - n-ная сопоставившаяся подгруппа из объекта {{jsxref("Global_Objects/RegExp", "RegExp")}} в первом параметре метода replace() (cоответствует шаблонам замены $1, $2 и так далее, описанным выше). Например, если в качестве шаблона передано регулярное выражение /(\a+)(\b+)/, параметр p1 будет значение сопоставления с подгруппой \a+, а параметр p2 — с подгруппой \b+. + n-ная сопоставившаяся подгруппа из объекта {{jsxref("Global_Objects/RegExp", "RegExp")}} в первом параметре метода replace() (соответствует шаблонам замены $1, $2 и так далее, описанным выше). Например, если в качестве шаблона передано регулярное выражение /(\a+)(\b+)/, параметр p1 будет значение сопоставления с подгруппой \a+, а параметр p2 — с подгруппой \b+. offset diff --git a/files/ru/web/javascript/reference/global_objects/string/replaceall/index.html b/files/ru/web/javascript/reference/global_objects/string/replaceall/index.html index f938fefb64..8ccf95507f 100644 --- a/files/ru/web/javascript/reference/global_objects/string/replaceall/index.html +++ b/files/ru/web/javascript/reference/global_objects/string/replaceall/index.html @@ -11,7 +11,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/replaceAll
      {{EmbedInteractiveExample("pages/js/string-replaceall.html")}}
      - +

      Syntax

      @@ -26,18 +26,18 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/replaceAll
      regexp (pattern)
      -
      Регулярное выражение или буква с глобальным флагом поиска ("g"). Совпадения меняются на newSubstr или значени возвращенное указанной функцией function. A RegExp без глобального флага поиска ("g") вернет ошибку TypeError: "replaceAll must be called with a global RegExp".
      +
      Регулярное выражение или буква с глобальным флагом поиска ("g"). Совпадения меняются на newSubstr или значении возвращенное указанной функцией function. A RegExp без глобального флага поиска ("g") вернет ошибку TypeError: "replaceAll must be called with a global RegExp".
      substr
      Подстрока, которая заменится newSubstr. Обрабатывается как буквенная строка, не интерпретируется как регулярное выражение.
      newSubstr (replacement)
      -
      Новая строка, которая заменяет найденные подстроки указанные в regexp или substr парамерах. Поддерживается ряд специальных шаблонов замены; смотрите "Specifying a string as a parameter" блок ниже.
      +
      Новая строка, которая заменяет найденные подстроки указанные в regexp или substr параметрах. Поддерживается ряд специальных шаблонов замены; смотрите "Specifying a string as a parameter" блок ниже.
      function (replacement)
      Функция вызванная при создании новой строки которая используется для замены совпадений указанных в regexp or substr. Аргументы применяемы в этой функции описываются в "Specifying a function as a parameter" блок ниже.

      Return value

      -

      Новая строка, в которой все совпадения замены на уазанную подстроку или специальный шаблон.

      +

      Новая строка, в которой все совпадения замены на указанную подстроку или специальный шаблон.

      Описание

      @@ -61,7 +61,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/replaceAll $& - Вставлет совпадения. + Вставлять совпадения. $` @@ -80,9 +80,9 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/replaceAll

      Указание функции в качестве параметра

      -

      Вы можете передать функцию вторым параметром. Вэтом случае, функция вызывается полсе нахождения совпадений. Результат функции может быть использованна как замещающая строка. (Внимание: Выше упомянутые специальные шаблоны замены в данном случае неприменимы.)

      +

      Вы можете передать функцию вторым параметром. Этом случае, функция вызывается после нахождения совпадений. Результат функции может быть использована как замещающая строка. (Внимание: Выше упомянутые специальные шаблоны замены в данном случае неприменимы.)

      -

      Функция может быть вызвана многократно для каждого замененного совпадения, если регудярное выражение указано с глобальным влагом("g").

      +

      Функция может быть вызвана многократно для каждого замененного совпадения, если регулярное выражение указано с глобальным флагом("g").

      Функция имеет следующие аргументы:

      @@ -96,11 +96,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/replaceAll match - Найденная построка. (Соответствуетt $& указанному выше) + Найденная постройка. (Соответствует $& указанному выше) p1, p2, ... - nth количество строк найденых групповыми скобками указанные первым параметром в регулярном выражении. (Соответствует  $1, $2, см. выше) Для примера, если /(\a+)(\b+)/, то p1 это \a+, а p2 это\b+. + nth количество строк найденных групповыми скобками указанные первым параметром в регулярном выражении. (Соответствует  $1, $2, см. выше) Для примера, если /(\a+)(\b+)/, то p1 это \a+, а p2 это\b+. offset diff --git a/files/ru/web/javascript/reference/global_objects/string/startswith/index.html b/files/ru/web/javascript/reference/global_objects/string/startswith/index.html index 8664bc0fb6..a58fbf5631 100644 --- a/files/ru/web/javascript/reference/global_objects/string/startswith/index.html +++ b/files/ru/web/javascript/reference/global_objects/string/startswith/index.html @@ -14,7 +14,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/startsWith

      Сводка

      -

      Метод startsWith() помогает определить, начинается ли строка с символов указаных в скобках, возвращая, соответственно, true или false.

      +

      Метод startsWith() помогает определить, начинается ли строка с символов указанных в скобках, возвращая, соответственно, true или false.

      Синтаксис

      diff --git a/files/ru/web/javascript/reference/global_objects/string/substring/index.html b/files/ru/web/javascript/reference/global_objects/string/substring/index.html index 9efb4f84a8..bb18f3db2e 100644 --- a/files/ru/web/javascript/reference/global_objects/string/substring/index.html +++ b/files/ru/web/javascript/reference/global_objects/string/substring/index.html @@ -98,7 +98,7 @@ function replaceString(oldS, newS, fullS) { replaceString('мир', 'веб', 'Дивный новый мир');
      -

      Обратите внимание, что функция может скатиться в беcконечный цикл, если строка oldS сама является подстрокой для newS — например, если вы попытаетесь заменить слово «мир» на слово «другоймир». Лучше использоваться следующий метод для замены строк:

      +

      Обратите внимание, что функция может скатиться в бесконечный цикл, если строка oldS сама является подстрокой для newS — например, если вы попытаетесь заменить слово «мир» на слово «другоймир». Лучше использоваться следующий метод для замены строк:

      function replaceString(oldS, newS, fullS) {
         return fullS.split(oldS).join(newS);
      diff --git a/files/ru/web/javascript/reference/global_objects/string/tosource/index.html b/files/ru/web/javascript/reference/global_objects/string/tosource/index.html
      index 3570fd5b48..73dda0dd53 100644
      --- a/files/ru/web/javascript/reference/global_objects/string/tosource/index.html
      +++ b/files/ru/web/javascript/reference/global_objects/string/tosource/index.html
      @@ -31,7 +31,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/String/toSource
        
        
    • Для экземпляров объекта {{jsxref("Global_Objects/String", "String")}} или строковых литералов, метод toSource() возвращает строковое представление исходного кода.
    -

    Этот метод обычно вызывается внутренними механизмаим движка JavaScript, а не явно в коде.

    +

    Этот метод обычно вызывается внутренними механизмами движка JavaScript, а не явно в коде.

    Спецификации

    Не является частью какого-либо стандарта. Реализована в JavaScript 1.3.

    diff --git a/files/ru/web/javascript/reference/global_objects/symbol/@@toprimitive/index.html b/files/ru/web/javascript/reference/global_objects/symbol/@@toprimitive/index.html index 680100f800..4bb2fd8479 100644 --- a/files/ru/web/javascript/reference/global_objects/symbol/@@toprimitive/index.html +++ b/files/ru/web/javascript/reference/global_objects/symbol/@@toprimitive/index.html @@ -31,14 +31,14 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Symbol/@@toPrimitive

    JavaScript вызывает метод[@@toPrimitive] () для преобразования объекта в примитив. JavaScript автоматически вызывает метод, когда на месте объекта ожидается примитивное значение.

    -

    Спефикации

    +

    Спецификации

    - + diff --git a/files/ru/web/javascript/reference/global_objects/symbol/index.html b/files/ru/web/javascript/reference/global_objects/symbol/index.html index 9dbecb81cb..739474189c 100644 --- a/files/ru/web/javascript/reference/global_objects/symbol/index.html +++ b/files/ru/web/javascript/reference/global_objects/symbol/index.html @@ -114,7 +114,7 @@ typeof symObj; // "object"
    {{jsxref("Symbol.for()", "Symbol.for(key)")}}
    Ищет существующие символы по заданному ключу и возвращает его, если он найден. В противном случае создается новый символ для данного ключа в глобальном реестре символов.
    {{jsxref("Symbol.keyFor", "Symbol.keyFor(sym)")}}
    -
    Получает по разделямому символу его ключ из глобального реестра символов.
    +
    Получает по разделяемому символу его ключ из глобального реестра символов.

    Прототип Symbol

    @@ -147,7 +147,7 @@ typeof Symbol.iterator === 'symbol'
    • При попытке конвертировать символ в число, будет брошено исключение {{jsxref("TypeError")}} (напр., +sym или sym | 0).
    • Результатом нестрогого сравнения, Object(sym) == sym, будет true.
    • -
    • Symbol("foo") + "bar" бросает исключение {{jsxref("TypeError")}} (невозможно преобразовать символ в строку). Это удерживает разработчика от, к примеру, случайного создания строкого поля у объекта из символа.
    • +
    • Symbol("foo") + "bar" бросает исключение {{jsxref("TypeError")}} (невозможно преобразовать символ в строку). Это удерживает разработчика от, к примеру, случайного создания строгого поля у объекта из символа.
    • Более  "безопасный" вызов String(sym) работает с символами как вызов {{jsxref("Symbol.prototype.toString()")}}. Заметьте, что в то же время new String(sym) бросит исключение.
    diff --git a/files/ru/web/javascript/reference/global_objects/symbol/search/index.html b/files/ru/web/javascript/reference/global_objects/symbol/search/index.html index 2f484e317f..c1951ba776 100644 --- a/files/ru/web/javascript/reference/global_objects/symbol/search/index.html +++ b/files/ru/web/javascript/reference/global_objects/symbol/search/index.html @@ -40,7 +40,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Symbol/search

    Совместимость с браузерами

    - +

    {{Compat("javascript.builtins.Symbol.search")}}

    diff --git a/files/ru/web/javascript/reference/global_objects/symbol/toprimitive/index.html b/files/ru/web/javascript/reference/global_objects/symbol/toprimitive/index.html index fa512ba32f..ac35c69346 100644 --- a/files/ru/web/javascript/reference/global_objects/symbol/toprimitive/index.html +++ b/files/ru/web/javascript/reference/global_objects/symbol/toprimitive/index.html @@ -9,7 +9,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Symbol/toPrimitive ---
    {{JSRef}}
    -

    Symbol.toPrimitive является символом (symbol), который описывает свойство объекта как функцию, которая вызывается при преобразовании объекта в соответсвующее примитивное значение.

    +

    Symbol.toPrimitive является символом (symbol), который описывает свойство объекта как функцию, которая вызывается при преобразовании объекта в соответствующее примитивное значение.

    {{EmbedInteractiveExample("pages/js/symbol-toprimitive.html")}}

    diff --git a/files/ru/web/javascript/reference/global_objects/symbol/unscopables/index.html b/files/ru/web/javascript/reference/global_objects/symbol/unscopables/index.html index 1cb2a967b3..ff3b6289e2 100644 --- a/files/ru/web/javascript/reference/global_objects/symbol/unscopables/index.html +++ b/files/ru/web/javascript/reference/global_objects/symbol/unscopables/index.html @@ -18,11 +18,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Symbol/unscopables

    Символ @@unscopables (Symbol.unscopables)  может быть определён к любому объекту, чтобы исключить имена свойств из-за того, что они отображаются как лексические переменные с привязкой окружения with. Обратите внимание: если использовать "Строгий режим", оператор with будет недоступен и вероятнее всего также не понадобится этот символ.

    -

    Если Вы зададите свойству знаечние true в объекте unscopables  сделает его "unscopable" и, следовательно, оно не будет задействовано в области лексических переменных. Придав свойству значение false, Вы сделаете его scopable и, как следствие, оно будет задействовано в области лексических переменных.

    +

    Если Вы зададите свойству значение true в объекте unscopables  сделает его "unscopable" и, следовательно, оно не будет задействовано в области лексических переменных. Придав свойству значение false, Вы сделаете его scopable и, как следствие, оно будет задействовано в области лексических переменных.

    Примеры

    -

    Приведённый код отлично работает в ES5 и ниже. Однако в ECMAScript 2015 и более поздних версиях был введён метод  {{jsxref("Array.prototype.keys()")}}. Это означает, что внутри окружения with, "ключи" будут методом, а не пременной. Вот где теперь встроенные свойства символа {{jsxref("Array.@@unscopables", "Array.prototype[@@unscopables]")}} вступают в игру и препятствуют тому, чтобы некоторые из методов Array были включены в оператор with.

    +

    Приведённый код отлично работает в ES5 и ниже. Однако в ECMAScript 2015 и более поздних версиях был введён метод  {{jsxref("Array.prototype.keys()")}}. Это означает, что внутри окружения with, "ключи" будут методом, а не переменной. Вот где теперь встроенные свойства символа {{jsxref("Array.@@unscopables", "Array.prototype[@@unscopables]")}} вступают в игру и препятствуют тому, чтобы некоторые из методов Array были включены в оператор with.

    var keys = [];
     
    @@ -77,7 +77,7 @@ with (obj) {
     
     

    Совместимость с браузерами

    - +

    {{Compat("javascript.builtins.Symbol.unscopables")}}

    diff --git a/files/ru/web/javascript/reference/global_objects/typedarray/index.html b/files/ru/web/javascript/reference/global_objects/typedarray/index.html index 07056d7da1..17bd236f34 100644 --- a/files/ru/web/javascript/reference/global_objects/typedarray/index.html +++ b/files/ru/web/javascript/reference/global_objects/typedarray/index.html @@ -141,7 +141,7 @@ Int8Array.prototype.foo = "bar";
    - + @@ -223,7 +223,7 @@ for (var k in typedArrayTypes) - + diff --git a/files/ru/web/javascript/reference/global_objects/typedarray/join/index.html b/files/ru/web/javascript/reference/global_objects/typedarray/join/index.html index 1f89ffc4df..9997d91a71 100644 --- a/files/ru/web/javascript/reference/global_objects/typedarray/join/index.html +++ b/files/ru/web/javascript/reference/global_objects/typedarray/join/index.html @@ -37,7 +37,7 @@ uint8.join(''); // '123'

    {{Glossary('Polifill', 'Полифил')}}

    -

    Поскольку теперь нет глобального объекта с именем TypedArray, то полифилинг доджен быть выполнен "по требованию".

    +

    Поскольку теперь нет глобального объекта с именем TypedArray, то полифилинг должен быть выполнен "по требованию".

    // https://tc39.github.io/ecma262/#sec-%typedarray%.prototype.join
     if (!Uint8Array.prototype.join) {
    @@ -47,7 +47,7 @@ if (!Uint8Array.prototype.join) {
     }
     
    -

    Если вам нужна поддержка устаревшего JavaScript-дфижка, который не поддерживает свойство Object.defineProperty, то лучше не создавать полифилы новых методов Array.prototype, так как вы не сможете сделать их неперечислимыми.

    +

    Если вам нужна поддержка устаревшего JavaScript-движка, который не поддерживает свойство Object.defineProperty, то лучше не создавать полифилы новых методов Array.prototype, так как вы не сможете сделать их неперечислимыми.

    Спецификации

    diff --git a/files/ru/web/javascript/reference/global_objects/typedarray/set/index.html b/files/ru/web/javascript/reference/global_objects/typedarray/set/index.html index 2a26b9b4cb..c35428e678 100644 --- a/files/ru/web/javascript/reference/global_objects/typedarray/set/index.html +++ b/files/ru/web/javascript/reference/global_objects/typedarray/set/index.html @@ -37,7 +37,7 @@ typedarr.set(typedarray [,offset])
    {{jsxref("RangeError")}}
    -
    Возникает, в случае, когда с текущим сдвигом елементы будут сохраняться за пределы типизированного массива.
    +
    Возникает, в случае, когда с текущим сдвигом элементы будут сохраняться за пределы типизированного массива.

    Примеры

    diff --git a/files/ru/web/javascript/reference/global_objects/uint8clampedarray/index.html b/files/ru/web/javascript/reference/global_objects/uint8clampedarray/index.html index 5953bfdbe3..f6248232a8 100644 --- a/files/ru/web/javascript/reference/global_objects/uint8clampedarray/index.html +++ b/files/ru/web/javascript/reference/global_objects/uint8clampedarray/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Uint8ClampedArray ---
    {{JSRef}}
    -

    Типизированный массив Uint8ClampedArray —  это массив,  служащий для хранения 8-битных беззнаковых чисел, обрезаемых до диапазона от 0 до 255. Если значение меньше 0, то оно будет приведено к 0 , и к 255, если оно больше 255. Числа с плавающей точкой округляются с помощью математического округления. Массив инициализуруется нулями. После того как значение установлено, Вы можете ссылаться на него с помощью методов объекта или через стандартный синтаксис массивов (то есть, брать значения с помощью квадратных скобок). 

    +

    Типизированный массив Uint8ClampedArray —  это массив,  служащий для хранения 8-битных беззнаковых чисел, обрезаемых до диапазона от 0 до 255. Если значение меньше 0, то оно будет приведено к 0 , и к 255, если оно больше 255. Числа с плавающей точкой округляются с помощью математического округления. Массив инициализируется нулями. После того как значение установлено, Вы можете ссылаться на него с помощью методов объекта или через стандартный синтаксис массивов (то есть, брать значения с помощью квадратных скобок). 

    Syntax

    diff --git a/files/ru/web/javascript/reference/global_objects/unescape/index.html b/files/ru/web/javascript/reference/global_objects/unescape/index.html index 503782b5d0..b0052bf0dc 100644 --- a/files/ru/web/javascript/reference/global_objects/unescape/index.html +++ b/files/ru/web/javascript/reference/global_objects/unescape/index.html @@ -11,7 +11,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/unescape

    Описание

    -

    Устаревший метод unescape(str) создает новую строку в которой шестнадцатиричная последовательность симоволов вида %xx заменяется эквивалентами из кодировки ASCII. Знаки, закодированные в формате %uxxxx (знаки Юникода), заменяются знаками Юникода в шестнадцатеричной кодировке xxxx.

    +

    Устаревший метод unescape(str) создает новую строку в которой шестнадцатеричная последовательность символов вида %xx заменяется эквивалентами из кодировки ASCII. Знаки, закодированные в формате %uxxxx (знаки Юникода), заменяются знаками Юникода в шестнадцатеричной кодировке xxxx.

    Последовательность может быть результатом работы функции вроде {{jsxref("Global_Objects/escape", "escape")}}. Т.к. {{jsxref("Global_Objects/decodeURIComponent", "unescape")}} является устаревшей, используйте {{jsxref("Global_Objects/decodeURI", "decodeURI")}} или {{jsxref("Global_Objects/decodeURIComponent", "decodeURIComponent")}} вместо неё.

    @@ -30,7 +30,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/unescape

    Описание

    -

    Функция unescape это свойство глабального объекта.

    +

    Функция unescape это свойство глобального объекта.

    Примеры

    @@ -51,7 +51,7 @@ unescape("%u0107"); // "ć" - + diff --git a/files/ru/web/javascript/reference/global_objects/weakmap/delete/index.html b/files/ru/web/javascript/reference/global_objects/weakmap/delete/index.html index 76e4b078dc..8072855d1e 100644 --- a/files/ru/web/javascript/reference/global_objects/weakmap/delete/index.html +++ b/files/ru/web/javascript/reference/global_objects/weakmap/delete/index.html @@ -11,7 +11,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WeakMap/delete
    wm.delete(key);
    -

    Параетры

    +

    Параметры

    key
    diff --git a/files/ru/web/javascript/reference/global_objects/webassembly/compile/index.html b/files/ru/web/javascript/reference/global_objects/webassembly/compile/index.html index ba600573a9..90f80474a6 100644 --- a/files/ru/web/javascript/reference/global_objects/webassembly/compile/index.html +++ b/files/ru/web/javascript/reference/global_objects/webassembly/compile/index.html @@ -15,7 +15,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly/compile
    bufferSource
    -
    Типированный массив typed array или ArrayBuffer, содержащий двоичный код модуля .wasm, который вы хотите скомпилировать.
    +
    Типизированный массив typed array или ArrayBuffer, содержащий двоичный код модуля .wasm, который вы хотите скомпилировать.

    Возвращаемое значение

    diff --git a/files/ru/web/javascript/reference/global_objects/webassembly/table/index.html b/files/ru/web/javascript/reference/global_objects/webassembly/table/index.html index c453aeaf46..eb9bc5ce48 100644 --- a/files/ru/web/javascript/reference/global_objects/webassembly/table/index.html +++ b/files/ru/web/javascript/reference/global_objects/webassembly/table/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly/Table ---
    {{JSRef}}
    -

    Объект WebAssembly.Table() - это JavaScript обертка — структура похожая на массив, представляюшая таблицу функций WebAssembly. Таблица, созданная через JavaScript или в коде WebAssembly, будет доступна и может быть изменена как из JavaScript, так и из WebAssembly.

    +

    Объект WebAssembly.Table() - это JavaScript обертка — структура похожая на массив, представляющая таблицу функций WebAssembly. Таблица, созданная через JavaScript или в коде WebAssembly, будет доступна и может быть изменена как из JavaScript, так и из WebAssembly.

    Обратите внимание: Таблицы сейчас хранят только ссылки на функции, но это может быть расширено в будущем.

    @@ -28,7 +28,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly/Table
    Table.prototype.constructor
    Возвращает функцию которая создала этот объект. По умолчанию это конструктор {{jsxref("WebAssembly.Table()")}}.
    {{jsxref("WebAssembly/Table/length","Table.prototype.length")}}
    -
    Возвращает длину таблицы (количество елементов в таблице).
    +
    Возвращает длину таблицы (количество элементов в таблице).

    Instance methods

    @@ -44,14 +44,14 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly/Table

    Примеры

    -

    Следующий пример (смотри исходный код и живую версию table2.html) создает новый экземпляр WebAssembly Table с 2 элементами. После этого выводит длину таблицы и содержимое первых двух елементов (полученных через {{jsxref("WebAssembly/Table/get", "Table.prototype.get()")}} чтобы показать что длина равняется 2 и елементы равны {{jsxref("null")}}.

    +

    Следующий пример (смотри исходный код и живую версию table2.html) создает новый экземпляр WebAssembly Table с 2 элементами. После этого выводит длину таблицы и содержимое первых двух элементов (полученных через {{jsxref("WebAssembly/Table/get", "Table.prototype.get()")}} чтобы показать что длина равняется 2 и элементы равны {{jsxref("null")}}.

    var tbl = new WebAssembly.Table({initial:2, element:"anyfunc"});
     console.log(tbl.length);  // "2"
     console.log(tbl.get(0));  // "null"
     console.log(tbl.get(1));  // "null"
    -

    После этого мы создаем обьект импорта содержащий таблицу:

    +

    После этого мы создаем объект импорта содержащий таблицу:

    var importObj = {
       js: {
    @@ -59,7 +59,7 @@ console.log(tbl.get(1));  // "null"
    } }; -

    После этого, мы создаем экземпляр модуля wasm (table2.wasm) используя метод {{jsxref("WebAssembly.instantiateStreaming()")}}.  Модуль table2.wasm содержит две функции, одна возвращает 42, а вторая - 83) и сохраняет эти функции под индексами 0 и 1 в импортированную таблицу (смотри текстовую версию).  Таким образом, после создания wasm-модуля, таблица имеет туже длину, но елементы таблицы стали функциями экспортированными из WebAssembly которые можно вызывать из JS.

    +

    После этого, мы создаем экземпляр модуля wasm (table2.wasm) используя метод {{jsxref("WebAssembly.instantiateStreaming()")}}.  Модуль table2.wasm содержит две функции, одна возвращает 42, а вторая - 83) и сохраняет эти функции под индексами 0 и 1 в импортированную таблицу (смотри текстовую версию).  Таким образом, после создания wasm-модуля, таблица имеет туже длину, но элементы таблицы стали функциями экспортированными из WebAssembly которые можно вызывать из JS.

    WebAssembly.instantiateStreaming(fetch('table2.wasm'), importObject)
     .then(function(obj) {
    diff --git a/files/ru/web/javascript/reference/lexical_grammar/index.html b/files/ru/web/javascript/reference/lexical_grammar/index.html
    index 33e79c57c7..24705ce8ec 100644
    --- a/files/ru/web/javascript/reference/lexical_grammar/index.html
    +++ b/files/ru/web/javascript/reference/lexical_grammar/index.html
    @@ -164,7 +164,7 @@ ECMAScript также определяет ключевые слова и лит
     
     

    В JavaScript есть несколько способов указать комментарии в коде.

    -

    Первый способ // комментарий; в этом случае весь текст в строке после двойного слэша будет комментарием, например:

    +

    Первый способ // комментарий; в этом случае весь текст в строке после двойного слеша будет комментарием, например:

    function comment() {
       // Это комментарий в строке
    @@ -212,7 +212,7 @@ comment();

    Третий специализированный синтаксис комментариев, шебанг комментарий, в процессе стандартизации в ECMAScript (смотреть Hashbang Grammar proposal).

    -

    Шебанг комментарий ведет себя точно также как и однострочный (//) комменатрий. Вместо этого, он начинается с #! и действителен только в самом начале скрипта или модуля. Обратите внимание, что никакие пробелы не разрешены перед #!. Комментарий состоит из всех символов после #! до конца первой строки; только такой комментарий разрешен.

    +

    Шебанг комментарий ведет себя точно также как и однострочный (//) комментарий. Вместо этого, он начинается с #! и действителен только в самом начале скрипта или модуля. Обратите внимание, что никакие пробелы не разрешены перед #!. Комментарий состоит из всех символов после #! до конца первой строки; только такой комментарий разрешен.

    Шебанг комментарий определяет путь к  JavaScript интерпретатору, скрипт которого Вы хотите выполнить. Пример, как это работает:

    diff --git a/files/ru/web/javascript/reference/operators/async_function/index.html b/files/ru/web/javascript/reference/operators/async_function/index.html index 9b9c72aba1..2936baf4f4 100644 --- a/files/ru/web/javascript/reference/operators/async_function/index.html +++ b/files/ru/web/javascript/reference/operators/async_function/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Operators/async_function ---
    {{jsSidebar("Operators")}}
    -

    Ключевое слово async function исползуется для определения асинхронной функции внутри выражений.

    +

    Ключевое слово async function используется для определения асинхронной функции внутри выражений.

    Вы также можете определить асинхронные функции при помощи инструкции async function.

    diff --git a/files/ru/web/javascript/reference/operators/bitwise_and/index.html b/files/ru/web/javascript/reference/operators/bitwise_and/index.html index ce232c1463..cb2c53503a 100644 --- a/files/ru/web/javascript/reference/operators/bitwise_and/index.html +++ b/files/ru/web/javascript/reference/operators/bitwise_and/index.html @@ -5,12 +5,12 @@ tags: - JavaScript - Оператор - По - - Поитовые операторы + - Побитовые операторы translation_of: Web/JavaScript/Reference/Operators/Bitwise_AND ---
    {{jsSidebar("Operators")}}
    -

    Побитовый опеератор И (&) возвращает 1 в каждой битовой позиции,  для которой соответствующие биты обоих операндов равны 1.

    +

    Побитовый оператор И (&) возвращает 1 в каждой битовой позиции,  для которой соответствующие биты обоих операндов равны 1.

    {{EmbedInteractiveExample("pages/js/expressions-bitwise-and.html")}}
    @@ -72,7 +72,7 @@ translation_of: Web/JavaScript/Reference/Operators/Bitwise_AND 14 & 9 (base 10) = 00000000000000000000000000001000 (base 2) = 8 (base 10)
    -

    Побитовоее И для любого числа x с 0 дает 0.

    +

    Побитовое И для любого числа x с 0 дает 0.

    Примеры

    diff --git a/files/ru/web/javascript/reference/operators/class/index.html b/files/ru/web/javascript/reference/operators/class/index.html index ad22c1abc1..47924eddbe 100644 --- a/files/ru/web/javascript/reference/operators/class/index.html +++ b/files/ru/web/javascript/reference/operators/class/index.html @@ -7,7 +7,7 @@ translation_of: Web/JavaScript/Reference/Operators/class
    -

    Class expression это способ определения класса в ECMAScript 2015 (ES6). Схожий с function expressions, class expressions может быть именованным либо не иметь имени. Если он именованный, то его имя доступно только внутри класса. JavaScript классы используют прототипно-ориентированние наследование.

    +

    Class expression это способ определения класса в ECMAScript 2015 (ES6). Схожий с function expressions, class expressions может быть именованным либо не иметь имени. Если он именованный, то его имя доступно только внутри класса. JavaScript классы используют прототипно-ориентирование наследование.

    Синтаксис

    @@ -17,7 +17,7 @@ translation_of: Web/JavaScript/Reference/Operators/class

    Описание

    -

    Class expression имеет схожий сиснтаксис с {{jsxref("Statements/class", "class declaration (statement)", "", "true")}}. Однако в class expression можно опустить имя класса ("binding identifier"), что не допустимо с {{jsxref("Statements/class", "class declaration", "", "true")}}. Также class expression позволяет повторно объявить уже существующий класс и это не приведёт к ошибке типа, как при использовании {{jsxref("Statements/class", "class declaration", "", "true")}}. Свойство конструктора является опциональным. Результатом вызова оператора {{jsxref("Operators/typeof", "typeof")}} на классах, сгенерированных при помощи class expression, всегда будет "function".

    +

    Class expression имеет схожий синтаксис с {{jsxref("Statements/class", "class declaration (statement)", "", "true")}}. Однако в class expression можно опустить имя класса ("binding identifier"), что не допустимо с {{jsxref("Statements/class", "class declaration", "", "true")}}. Также class expression позволяет повторно объявить уже существующий класс и это не приведёт к ошибке типа, как при использовании {{jsxref("Statements/class", "class declaration", "", "true")}}. Свойство конструктора является опциональным. Результатом вызова оператора {{jsxref("Operators/typeof", "typeof")}} на классах, сгенерированных при помощи class expression, всегда будет "function".

    Так же, как и при использовании class declaration, тело класса у class expression будет исполняться в {{jsxref("Strict_mode", "строгом режиме", "", 1)}}.

    @@ -89,7 +89,7 @@ Foo.name; // "NamedFoo"
    Спецификация СтатусКоментарийКомментарий
    {{SpecName('ES2015', '#sec-symbol.prototype-@@toprimitive', 'Symbol.prototype.@@toPrimitive')}} {{jsxref("Float32Array")}} 1.2x10-38 to 3.4x1038 432-битное число с плавающей точкой IEEE-стандарта (7 значащих цифр, нпример 1.123456)32-битное число с плавающей точкой IEEE-стандарта (7 значащих цифр, например 1.123456) unrestricted float float
    {{SpecName('ES6', '#sec-typedarray-objects', 'TypedArray Objects')}} {{Spec2('ES6')}}Первоначальное определение в стандарте ECMA. Определяет поведение индекных и именованных свойств. Указывает, что необходимо использовать оператор new.Первоначальное определение в стандарте ECMA. Определяет поведение индексных и именованных свойств. Указывает, что необходимо использовать оператор new.
    {{SpecName('ESDraft', '#sec-typedarray-objects', 'TypedArray Objects')}}
    ECMAScript 1st Edition. StandardНачальное определние.Начальное определение.
    {{SpecName('ES5.1', '#sec-B.2.2', 'unescape')}}
    -

    Поддержка брузерами

    +

    Поддержка браузерами

    {{CompatibilityTable}}

    diff --git a/files/ru/web/javascript/reference/operators/conditional_operator/index.html b/files/ru/web/javascript/reference/operators/conditional_operator/index.html index facc7e671a..8b035ad9e4 100644 --- a/files/ru/web/javascript/reference/operators/conditional_operator/index.html +++ b/files/ru/web/javascript/reference/operators/conditional_operator/index.html @@ -163,7 +163,7 @@ location.assign(url); // "stop.html"
    -

    Смотрие также

    +

    Смотрите также

    • if statement
    • diff --git a/files/ru/web/javascript/reference/operators/function/index.html b/files/ru/web/javascript/reference/operators/function/index.html index aefe1d0c2b..7e69430938 100644 --- a/files/ru/web/javascript/reference/operators/function/index.html +++ b/files/ru/web/javascript/reference/operators/function/index.html @@ -50,7 +50,7 @@ var notHoisted = function() {

      Именованное функциональное выражение

      -

      Если вы хотите сослаться на текущую функцию внутри тела этой функции, вам необходимо создать именованое функциональное выражение. Данное имя будет локальным только для тела функции (её области видимости). Кроме того, это позволяет избежать использования нестандартного свойства {{jsxref("arguments.callee")}}.

      +

      Если вы хотите сослаться на текущую функцию внутри тела этой функции, вам необходимо создать именованное функциональное выражение. Данное имя будет локальным только для тела функции (её области видимости). Кроме того, это позволяет избежать использования нестандартного свойства {{jsxref("arguments.callee")}}.

      var math = {
         'factit': function factorial(n) {
      diff --git a/files/ru/web/javascript/reference/operators/function_star_/index.html b/files/ru/web/javascript/reference/operators/function_star_/index.html
      index c924d55dfe..289583b059 100644
      --- a/files/ru/web/javascript/reference/operators/function_star_/index.html
      +++ b/files/ru/web/javascript/reference/operators/function_star_/index.html
      @@ -25,14 +25,14 @@ translation_of: Web/JavaScript/Reference/Operators/function*
        
      имя
      Имя функции. Может быть опущено, в этом случае функция будет анонимной. Имя локально для тела функции.
      параметрN
      -
      Имя аргумента, передаваемого в функцию. Фунция может иметь до 255 аргументов.
      +
      Имя аргумента, передаваемого в функцию. Функция может иметь до 255 аргументов.
      инструкции
      Инструкции, составляющие тело функции.

      Описание

      -

      Выражение function*  очень похоже на обявление {{jsxref('Statements/function*', 'function*')}}, и имеет почти такой же синтаксис. Основная разница между выражением function* и объявлением function* – в имени функции, которое может быть опущено в выражениях function* для создания анонимных функций. Смотрите главу о функциях для получения более подробной информации.

      +

      Выражение function*  очень похоже на объявление {{jsxref('Statements/function*', 'function*')}}, и имеет почти такой же синтаксис. Основная разница между выражением function* и объявлением function* – в имени функции, которое может быть опущено в выражениях function* для создания анонимных функций. Смотрите главу о функциях для получения более подробной информации.

      Примеры

      diff --git a/files/ru/web/javascript/reference/operators/in/index.html b/files/ru/web/javascript/reference/operators/in/index.html index 35ee2c4620..7260b5913e 100644 --- a/files/ru/web/javascript/reference/operators/in/index.html +++ b/files/ru/web/javascript/reference/operators/in/index.html @@ -24,7 +24,7 @@ translation_of: Web/JavaScript/Reference/Operators/in
      object
      -
      Объект, в котором нужно проверить содежание свойства с заданным именем.
      +
      Объект, в котором нужно проверить содержание свойства с заданным именем.

      Описание

      diff --git a/files/ru/web/javascript/reference/operators/index.html b/files/ru/web/javascript/reference/operators/index.html index eff74ba579..0ce141a4cb 100644 --- a/files/ru/web/javascript/reference/operators/index.html +++ b/files/ru/web/javascript/reference/operators/index.html @@ -80,7 +80,7 @@ translation_of: Web/JavaScript/Reference/Operators

      Унарные операторы

      -

      Унарные опарации — это операции с одним операндом.

      +

      Унарные операции — это операции с одним операндом.

      {{jsxref("Operators/delete", "delete")}}
      @@ -101,7 +101,7 @@ translation_of: Web/JavaScript/Reference/Operators

      Арифметические операторы

      -

      Арифметические операторы своими операндами принимают числовые значения (литерали или переменные) и возвращают одно числовое значение.

      +

      Арифметические операторы своими операндами принимают числовые значения (литералы или переменные) и возвращают одно числовое значение.

      {{jsxref("Operators/Arithmetic_Operators", "+", "#Addition")}}
      diff --git a/files/ru/web/javascript/reference/operators/instanceof/index.html b/files/ru/web/javascript/reference/operators/instanceof/index.html index 81676c6bf5..dd264b0a07 100644 --- a/files/ru/web/javascript/reference/operators/instanceof/index.html +++ b/files/ru/web/javascript/reference/operators/instanceof/index.html @@ -69,14 +69,14 @@ o3 instanceof C; // true, так как C.prototype теперь присутс

      instanceof и множественные контексты (например, фреймы или окна)

      -

      Различные контексты имеют разные среды выполнения. Это означает, что они имеют различныые built-ins (разный глобальный объект, различные конструкторы и т.д.). Это может давать неожиданные результаты. Например, [] instanceof window.frames[0].Array вернёт false, потому что Array.prototype !== window.frames[0].Array а массив наследуется от Array.

      +

      Различные контексты имеют разные среды выполнения. Это означает, что они имеют различные built-ins (разный глобальный объект, различные конструкторы и т.д.). Это может давать неожиданные результаты. Например, [] instanceof window.frames[0].Array вернёт false, потому что Array.prototype !== window.frames[0].Array а массив наследуется от Array.

      Это может казаться несущественной проблемой сначала, но при работе с несколькими фреймами или окнами, и передачи объектов из одного контекста в другой с помощью функций, это может стать серьёзной проблемой. С другой стороны, безопасно проверить, является ли некоторый объект массивом можно используя Array.isArray(myObj).

      Например, для проверки того, что Node является SVGElement в разных контекстах можно использовать myNode instanceof myNode.ownerDocument.defaultView.SVGElement.

      Замечания для разработчиков Mozilla:
      -Использование XPCOM instanceof в коде имеет специальный эффект: obj instanceof xpcomInterface (например Components.interfaces.nsIFile) вызывает obj.QueryInterface(xpcomInterface) и возвращает true если проверка на QueryInterface прошла успешно. Побочным эфектом этого вызова является то, что можно использовать свойства xpcomInterface на obj после успешной проверки с помощью instanceof. В отличии от стандартных глобальных JavaScript типов, проверка obj instanceof xpcomInterface работает как ожидается, даже если obj отнсится к другому контексту.
      +Использование XPCOM instanceof в коде имеет специальный эффект: obj instanceof xpcomInterface (например Components.interfaces.nsIFile) вызывает obj.QueryInterface(xpcomInterface) и возвращает true если проверка на QueryInterface прошла успешно. Побочным эффектом этого вызова является то, что можно использовать свойства xpcomInterface на obj после успешной проверки с помощью instanceof. В отличии от стандартных глобальных JavaScript типов, проверка obj instanceof xpcomInterface работает как ожидается, даже если obj относится к другому контексту.

      Примеры

      diff --git a/files/ru/web/javascript/reference/operators/new/index.html b/files/ru/web/javascript/reference/operators/new/index.html index ce21bd41c1..b6f4ed80b7 100644 --- a/files/ru/web/javascript/reference/operators/new/index.html +++ b/files/ru/web/javascript/reference/operators/new/index.html @@ -43,12 +43,12 @@ translation_of: Web/JavaScript/Reference/Operators/new
      1. Создается новый объект, наследующий Foo.prototype.
      2. Вызывается конструктор — функция Foo с указанными аргументами и this, привязанным к только что созданному объекту. new Foo эквивалентно new Foo(), то есть если аргументы не указаны, Foo вызывается без аргументов.
      3. -
      4. Результатом выражения new становится объект, возвращенный конструктором. Если конструктор не возвращет объект явно, используется объект из п. 1. (Обычно конструкторы не возвращают значение, но они могут делать это, если нужно переопределить обычный процесс создания объектов.)
      5. +
      6. Результатом выражения new становится объект, возвращенный конструктором. Если конструктор не возвращает объект явно, используется объект из п. 1. (Обычно конструкторы не возвращают значение, но они могут делать это, если нужно переопределить обычный процесс создания объектов.)

      Всегда можно добавить свойство к уже созданному объекту. Например, car1.color = "black" добавляет свойство color к объекту car1, и присваивает ему значение "black". Это не затрагивает другие объекты. Чтобы добавить свойство ко всем объектам типа, нужно добавлять его в определение типа Car.

      -

      Добавить свойство к ранее определенному типу можно используя свойство Function.prototype. Это определит свойство для всех объектов, созданных этой функцией, а не только у какого-либо экземпляра. Следующий пример добавляет свойство color со значениеи null всем объектам типа car, а потом меняет его на  "black" только у экземпляра car1. Больше информации в статье prototype.

      +

      Добавить свойство к ранее определенному типу можно используя свойство Function.prototype. Это определит свойство для всех объектов, созданных этой функцией, а не только у какого-либо экземпляра. Следующий пример добавляет свойство color со значением null всем объектам типа car, а потом меняет его на  "black" только у экземпляра car1. Больше информации в статье prototype.

      function Car() {}
       car1 = new Car();
      @@ -80,7 +80,7 @@ console.log(car1.color);   // black
       
      var mycar = new Car("Eagle", "Talon TSi", 1993);
       
      -

      Это выражение создает экземпляр mycar и присваевает его свойствам указанные значения. Таким образом, mycar.make принимает значение "Eagle", mycar.year принимает значение 1993, и так далее.

      +

      Это выражение создает экземпляр mycar и присваивает его свойствам указанные значения. Таким образом, mycar.make принимает значение "Eagle", mycar.year принимает значение 1993, и так далее.

      Можно создать любое количество экземпляров car с помощью оператора new. Например:

      @@ -120,7 +120,7 @@ var ken = new Person("Ken Jones", 39, "M"); var car2 = new Car("Nissan", "300ZX", 1992, ken);
      -

      Вместо строковых или численных значений можно передать обект как параметр. Чтобы узнать имя владельца car2, получим доступ к свойству:

      +

      Вместо строковых или численных значений можно передать объект как параметр. Чтобы узнать имя владельца car2, получим доступ к свойству:

      car2.owner.name
       
      diff --git a/files/ru/web/javascript/reference/operators/object_initializer/index.html b/files/ru/web/javascript/reference/operators/object_initializer/index.html index c7172a0c03..5f8d445e0d 100644 --- a/files/ru/web/javascript/reference/operators/object_initializer/index.html +++ b/files/ru/web/javascript/reference/operators/object_initializer/index.html @@ -72,7 +72,7 @@ object.foo = 'baz';

      Определение свойств

      -

      Мы уже рассмотрели, как объявить свойства, используя синтаксис инициализации. Зачастую, в коде появляются свойства, которые вы захотите поместить в объект. Вы увидете следующий код:

      +

      Мы уже рассмотрели, как объявить свойства, используя синтаксис инициализации. Зачастую, в коде появляются свойства, которые вы захотите поместить в объект. Вы увидите следующий код:

      var a = 'foo',
           b = 42,
      @@ -218,7 +218,7 @@ assert(!obj4.hasOwnProperty('__proto__'));
       
       

      Только одно изменение prototype разрешено через литеральное объявление объекта: несколько изменений prototype вызовут синтаксическую ошибку.

      -

      Объявление свойства не через "двоеточие" не изменит знаения prototype: это описание будет выглядеть идентично такому же объявлению свойства с использованием любого другого имени.

      +

      Объявление свойства не через "двоеточие" не изменит значения prototype: это описание будет выглядеть идентично такому же объявлению свойства с использованием любого другого имени.

      var __proto__ = 'variable';
       
      diff --git a/files/ru/web/javascript/reference/operators/optional_chaining/index.html b/files/ru/web/javascript/reference/operators/optional_chaining/index.html
      index 30fd29e3c0..a51882e0d6 100644
      --- a/files/ru/web/javascript/reference/operators/optional_chaining/index.html
      +++ b/files/ru/web/javascript/reference/operators/optional_chaining/index.html
      @@ -25,9 +25,9 @@ arr?.[index]
       
       

      Описание

      -

      Оператор опциональной последовательности предоставляет способ упростить доступ к значениям в цепочке обьектов, когда возможно, что какое-то свойство (или метод) в ней равно undefined или null.

      +

      Оператор опциональной последовательности предоставляет способ упростить доступ к значениям в цепочке объектов, когда возможно, что какое-то свойство (или метод) в ней равно undefined или null.

      -

      Для примера, создадим обьект obj, имеющий вложенную структуру. Без оператора опциональной последовательности поиск глубоко расположенных подсвойств требует проверки всех промежуточных свойств на существование, например:

      +

      Для примера, создадим объект obj, имеющий вложенную структуру. Без оператора опциональной последовательности поиск глубоко расположенных подсвойств требует проверки всех промежуточных свойств на существование, например:

      let nestedProp = obj.first && obj.first.second;
      @@ -46,7 +46,7 @@ let nestedProp = ((temp === null || temp === undefined) ? undefined : temp.secon

      Опциональная последовательность с вызовом функции

      -

      Вы можете использовать ?.когда необходимо вызвать метод, которого может не существовать. Это может быть полезно, например, при использовании API, в котором метод может быть недоступен из-за устаревания или неподдерживаемости устройством пользователя.

      +

      Вы можете использовать ?.когда необходимо вызвать метод, которого может не существовать. Это может быть полезно, например, при использовании API, в котором метод может быть недоступен из-за устаревания или не поддерживаем ости устройством пользователя.

      Использование ?. с вызовом функции значит, что выполнение автоматически вернет undefined, а не выбросит исключение, если метод не найден:

      @@ -58,7 +58,7 @@ let nestedProp = ((temp === null || temp === undefined) ? undefined : temp.secon

      Работа с функциями обратного вызова и обработчиками событий

      -

      Если Вы используете функции обратного вызова или извлекаете методы обьекта деструктурирующим присваиванием, Вы можете получить несуществующие значения, которые нельзя вызывать как функции до проверки на их существование. Используя оператор ?., Вы можете избежать лишних проверок:

      +

      Если Вы используете функции обратного вызова или извлекаете методы объекта деструктурирующим присваиванием, Вы можете получить несуществующие значения, которые нельзя вызывать как функции до проверки на их существование. Используя оператор ?., Вы можете избежать лишних проверок:

      // С использованием ES2019
       function doSomething(onContent, onError) {
      diff --git a/files/ru/web/javascript/reference/operators/property_accessors/index.html b/files/ru/web/javascript/reference/operators/property_accessors/index.html
      index 84ba61f9fd..e7c1631211 100644
      --- a/files/ru/web/javascript/reference/operators/property_accessors/index.html
      +++ b/files/ru/web/javascript/reference/operators/property_accessors/index.html
      @@ -25,7 +25,7 @@ object["property"]
       
       

      Точечная запись

      -

      В записи object.property, property должно быть действительным идентификатором. (В стандарте ECMAScript, имена своств технически называются "IdentifierNames", а не "Identifiers", поэтому зарезервированные слова могут быть использованы в их качестве, но это не рекомендуется). Например, object.$1 является верной записью, а object.1 - нет.

      +

      В записи object.property, property должно быть действительным идентификатором. (В стандарте ECMAScript, имена свойств технически называются "IdentifierNames", а не "Identifiers", поэтому зарезервированные слова могут быть использованы в их качестве, но это не рекомендуется). Например, object.$1 является верной записью, а object.1 - нет.

      const variable = object.property_name;
       
      @@ -44,7 +44,7 @@ console.log(object.1);   // SyntaxError
      document.createElement('pre')
      -

      Если вы хотите вызвать метод на численном литерале, не имеющий части с экспонентой или точки, отделающей дробную часть, нужно ставить пробел перед точкой, являющейся частью обращения к этому методу, чтобы интерпретатор не посчитал, что это точка отделяет дробную часть числа (или использовать другие способы этого избежать).

      +

      Если вы хотите вызвать метод на численном литерале, не имеющий части с экспонентой или точки, отделяющей дробную часть, нужно ставить пробел перед точкой, являющейся частью обращения к этому методу, чтобы интерпретатор не посчитал, что это точка отделяет дробную часть числа (или использовать другие способы этого избежать).

      // SyntaxError, здесь считается, что 77. это число,
       // поэтому такая запись эквивалентна (77.)toExponentional()
      @@ -112,7 +112,7 @@ console.log(object[bar]);
       
      x = eval('document.forms.form_name.elements.' + strFormControl + '.value');
       
      -

      Функция eval() очень медленная и её использования следует избегать, когда это возможно. Кроме того, строка strFormControl при таком использовании обязаны содержать действительный идентификатор, что не является обязательным для id полей формы, то есть, например, поле с id 1 не получится получить такой записмью. Лучше вместо этого использовать скобочную запись:

      +

      Функция eval() очень медленная и её использования следует избегать, когда это возможно. Кроме того, строка strFormControl при таком использовании обязаны содержать действительный идентификатор, что не является обязательным для id полей формы, то есть, например, поле с id 1 не получится получить такой записью. Лучше вместо этого использовать скобочную запись:

      x = document.forms["form_name"].elements[strFormControl].value;
       
      diff --git a/files/ru/web/javascript/reference/operators/this/index.html b/files/ru/web/javascript/reference/operators/this/index.html index cfd5ae4385..68f1a69d21 100644 --- a/files/ru/web/javascript/reference/operators/this/index.html +++ b/files/ru/web/javascript/reference/operators/this/index.html @@ -17,7 +17,7 @@ translation_of: Web/JavaScript/Reference/Operators/this
      {{EmbedInteractiveExample("pages/js/expressions-this.html")}}
      - +

      Синтаксис

      @@ -195,7 +195,7 @@ var fn2 = obj.bar; // потому что он следует за this из fn2. console.log(fn2()() == window); // true
      -

      В примере выше, функция (назовем её анонимной функцией A), присвоенная методу obj.bar, возвращает другую функцию (назовем её анонимной функцией B) которая создана как стрелочная функция. В результате, this функции B при вызове замкнут на this, принадлежащий obj.bar (функции A). this функции B всегда будет иметь то значение, которое он получил при создании. В примере выше, this функции B указывает на this функции A,которым является obj, таким образом this будет равен obj даже тогда, когда будет вызван методом, который в нормальных условиях устанавливал бы значение this равным undefined или глобальному обьекту (или любым другим методом, как в предыдущем примере в глобальном контексте выполнения).

      +

      В примере выше, функция (назовем её анонимной функцией A), присвоенная методу obj.bar, возвращает другую функцию (назовем её анонимной функцией B) которая создана как стрелочная функция. В результате, this функции B при вызове замкнут на this, принадлежащий obj.bar (функции A). this функции B всегда будет иметь то значение, которое он получил при создании. В примере выше, this функции B указывает на this функции A,которым является obj, таким образом this будет равен obj даже тогда, когда будет вызван методом, который в нормальных условиях устанавливал бы значение this равным undefined или глобальному объекту (или любым другим методом, как в предыдущем примере в глобальном контексте выполнения).

      В методе объекта

      diff --git a/files/ru/web/javascript/reference/operators/typeof/index.html b/files/ru/web/javascript/reference/operators/typeof/index.html index f3a5ca27a3..68ea92a1ba 100644 --- a/files/ru/web/javascript/reference/operators/typeof/index.html +++ b/files/ru/web/javascript/reference/operators/typeof/index.html @@ -171,7 +171,7 @@ typeof /s/ === 'object'; // Firefox 5+ Соответствует ECMAScript

      Ошибки, связанные с временными мёртвыми зонами

      -

      До ECMAScript 2015, гарантировалось, что оператор typeof вернёт строку для любого операнда, с которым он был вызван. Это изменилось после добавления неподнимающихся объявлений let and const с блочной областью  видимости. Теперь, если переменные объявлены с помощью let и const, и для них вызывается typeof в блоке объявления переменных, но до объявления, то выбрасывается ReferenceError. Поведение отличается от необъявленных переменных, для которых typeof вернёт 'undefined'. Переменные с блочной областью видимости находятся в "временной мёртвой зоне", которая длится от начала блока до момента объявления переменных. В этой зоне попытка доступа к переменным выбрасывает исключение.

      +

      До ECMAScript 2015, гарантировалось, что оператор typeof вернёт строку для любого операнда, с которым он был вызван. Это изменилось после добавления не поднимающихся объявлений let and const с блочной областью  видимости. Теперь, если переменные объявлены с помощью let и const, и для них вызывается typeof в блоке объявления переменных, но до объявления, то выбрасывается ReferenceError. Поведение отличается от необъявленных переменных, для которых typeof вернёт 'undefined'. Переменные с блочной областью видимости находятся в "временной мёртвой зоне", которая длится от начала блока до момента объявления переменных. В этой зоне попытка доступа к переменным выбрасывает исключение.

      typeof undeclaredVariable === 'undefined';
       typeof newLetVariable; let newLetVariable; // ReferenceError
      diff --git a/files/ru/web/javascript/reference/operators/yield/index.html b/files/ru/web/javascript/reference/operators/yield/index.html
      index 04552374c8..2fa0227803 100644
      --- a/files/ru/web/javascript/reference/operators/yield/index.html
      +++ b/files/ru/web/javascript/reference/operators/yield/index.html
      @@ -82,7 +82,7 @@ console.log(iterator.next()); // { value:undefined, done:true }
       
       

      {{Compat("javascript.operators.yield")}}

      -

      Cмотрите также

      +

      Смотрите также

      • Итераторы
      • diff --git a/files/ru/web/javascript/reference/operators/yield_star_/index.html b/files/ru/web/javascript/reference/operators/yield_star_/index.html index 21773db189..ad8431f3bf 100644 --- a/files/ru/web/javascript/reference/operators/yield_star_/index.html +++ b/files/ru/web/javascript/reference/operators/yield_star_/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Operators/yield* ---
        {{jsSidebar("Operators")}}
        -

        Выражение yield* используется для того, чтобы "передать упраевление" функцией-генератором другому {{jsxref("Statements/function*", "генератору")}} или итерируемому объекту.

        +

        Выражение yield* используется для того, чтобы "передать управление" функцией-генератором другому {{jsxref("Statements/function*", "генератору")}} или итерируемому объекту.

        Синтаксис

        @@ -20,7 +20,7 @@ translation_of: Web/JavaScript/Reference/Operators/yield*

        Выражение yield* в функции-генераторе принимает итерируемый объект и возвращает его значения по очереди, как если бы эта функция-генератор возвращала их сама.

        -

        Значение выражения yield* само по себе равно посленему значению итурируемого объекта (т.е., того когда done равно true).

        +

        Значение выражения yield* само по себе равно последнему значению итерируемого объекта (т.е., того когда done равно true).

        Примеры

        diff --git a/files/ru/web/javascript/reference/statements/async_function/index.html b/files/ru/web/javascript/reference/statements/async_function/index.html index df0368c62a..31bcaad8c0 100644 --- a/files/ru/web/javascript/reference/statements/async_function/index.html +++ b/files/ru/web/javascript/reference/statements/async_function/index.html @@ -81,7 +81,7 @@ add2(10).then(v => {

        Не путайте await и Promise.all

        -

        Функция add1 приостанавливается на 2 секунды для первого await и еще на 2 для второго. Второй таймер создается только после срабатывания первого. В функции add2 создаются оба и оба же переходят в состояние await. В результате функция add2 завершится скорее через две, чем через четыре секунды, поскольку таймеры работают одновременно. Однако запускаются они все же не паралелльно, а друг за другом - такая конструкция не означает автоматического использования Promise.all. Если два или более Promise должны разрешаться параллельно, следует использовать Promise.all.

        +

        Функция add1 приостанавливается на 2 секунды для первого await и еще на 2 для второго. Второй таймер создается только после срабатывания первого. В функции add2 создаются оба и оба же переходят в состояние await. В результате функция add2 завершится скорее через две, чем через четыре секунды, поскольку таймеры работают одновременно. Однако запускаются они все же не параллельно, а друг за другом - такая конструкция не означает автоматического использования Promise.all. Если два или более Promise должны разрешаться параллельно, следует использовать Promise.all.

        Когда функция async выбрасывает исключение

        diff --git a/files/ru/web/javascript/reference/statements/block/index.html b/files/ru/web/javascript/reference/statements/block/index.html index 44198e332a..a6fb564aa7 100644 --- a/files/ru/web/javascript/reference/statements/block/index.html +++ b/files/ru/web/javascript/reference/statements/block/index.html @@ -47,7 +47,7 @@ original_slug: Web/JavaScript/Reference/Statements/Блок

        С использованием var

        -

        Переменные, объявленные через varне имеют блочной области видимости. Переменные, введенные внутри блока, имеют областью видимости содержащую их функцию или скрипт, и последствия записи в них значения распространяются за границы, собственно, блока, в котором они объявлены. Другими словами, блок инструкций не вводит новую область видимости. Хотя "отдельностоящие" блоки не являются нарушением синтаксиса, не стоит использовать отдельностоящие блоки в JavaScript, потому что они не делают то, чего вы от них ожидаете, если вы ожидаете, что они будут себя вести аналогично блокам в C или Java. Например:

        +

        Переменные, объявленные через varне имеют блочной области видимости. Переменные, введенные внутри блока, имеют областью видимости содержащую их функцию или скрипт, и последствия записи в них значения распространяются за границы, собственно, блока, в котором они объявлены. Другими словами, блок инструкций не вводит новую область видимости. Хотя "отдельно стоящие" блоки не являются нарушением синтаксиса, не стоит использовать отдельно стоящие блоки в JavaScript, потому что они не делают то, чего вы от них ожидаете, если вы ожидаете, что они будут себя вести аналогично блокам в C или Java. Например:

        var x = 1;
         {
        diff --git a/files/ru/web/javascript/reference/statements/class/index.html b/files/ru/web/javascript/reference/statements/class/index.html
        index 3aab01ee9a..8fae4bf5d3 100644
        --- a/files/ru/web/javascript/reference/statements/class/index.html
        +++ b/files/ru/web/javascript/reference/statements/class/index.html
        @@ -84,7 +84,7 @@ class Foo {}; // Uncaught TypeError: Identifier 'Foo' has already been declared
          
         
         
        -

        Поддержка брузерами

        +

        Поддержка браузерами

        {{CompatibilityTable}}

        diff --git a/files/ru/web/javascript/reference/statements/empty/index.html b/files/ru/web/javascript/reference/statements/empty/index.html index 89956bf163..3792c035bc 100644 --- a/files/ru/web/javascript/reference/statements/empty/index.html +++ b/files/ru/web/javascript/reference/statements/empty/index.html @@ -39,7 +39,7 @@ console.log(arr) killTheUniverse() // Это всегда выполняется!!!
        -

        Другой пример: if...else без фигурных скобок  ({}). Если three истинно, ничего не пройзойдет, four не важна, и функция launchRocket() тоже не запустится.

        +

        Другой пример: if...else без фигурных скобок  ({}). Если three истинно, ничего не произойдет, four не важна, и функция launchRocket() тоже не запустится.

        if (one)
           doOne();
        diff --git a/files/ru/web/javascript/reference/statements/for...in/index.html b/files/ru/web/javascript/reference/statements/for...in/index.html
        index 6cca45033b..24d7434f81 100644
        --- a/files/ru/web/javascript/reference/statements/for...in/index.html
        +++ b/files/ru/web/javascript/reference/statements/for...in/index.html
        @@ -29,7 +29,7 @@ translation_of: Web/JavaScript/Reference/Statements/for...in
         
         

        Удаление, добавление и модификация свойств

        -

        Цикл for...in проходит по свойствам в произвольном порядке (см. оператор {{jsxref("Operators/delete", "delete")}} для того, чтобы узнать почему порядок прохода может отличаться в зависимости от браузера). Если свойство изменяется за одну итерацию, а затем изменяется снова, его значением в цикле является его последнее значение. Свойство, удаленное до того, как до него дошёл цикл, не будет участвовать в нём. Свойства добавленные в объекты в цикле могут быть пропущены. В общем, лучше не добавлять, изменять или удалять свойство из объекта во время итерации, если по нему ещё не прошли. Нет гарантии, что добавленное свойство будет посещено циклом, изменное после проведения изменений, а удалённое после удаления.

        +

        Цикл for...in проходит по свойствам в произвольном порядке (см. оператор {{jsxref("Operators/delete", "delete")}} для того, чтобы узнать почему порядок прохода может отличаться в зависимости от браузера). Если свойство изменяется за одну итерацию, а затем изменяется снова, его значением в цикле является его последнее значение. Свойство, удаленное до того, как до него дошёл цикл, не будет участвовать в нём. Свойства добавленные в объекты в цикле могут быть пропущены. В общем, лучше не добавлять, изменять или удалять свойство из объекта во время итерации, если по нему ещё не прошли. Нет гарантии, что добавленное свойство будет посещено циклом, низменное после проведения изменений, а удалённое после удаления.

        Проход по массиву и for...in

        diff --git a/files/ru/web/javascript/reference/statements/for...of/index.html b/files/ru/web/javascript/reference/statements/for...of/index.html index 0074719d06..fdf8799529 100644 --- a/files/ru/web/javascript/reference/statements/for...of/index.html +++ b/files/ru/web/javascript/reference/statements/for...of/index.html @@ -251,7 +251,7 @@ iterable.foo = 'hello';
        console.log(i); // выведет 0, 1, 2, "foo", "arrCustom", "objCustom" }
      -

      Цикл выводит только перечисляемые свойства объекта iterable, в порядке их создания. Он не выводит значения 357 и hello поскольку они не являются перечисляемыми, фактически они вообще не являются свойствами, они являютя значениями. Выводятся же имена свойств и методов, например arrCustom и objCustom. Если вы еще не совсем поняли, по каким свойствам осуществляется обход, вот дополнительное объяснение того, как работает {{jsxref("Statements/for...in", "array iteration and for...in", "#Array_iteration_and_for...in")}} .

      +

      Цикл выводит только перечисляемые свойства объекта iterable, в порядке их создания. Он не выводит значения 357 и hello поскольку они не являются перечисляемыми, фактически они вообще не являются свойствами, они являются значениями. Выводятся же имена свойств и методов, например arrCustom и objCustom. Если вы еще не совсем поняли, по каким свойствам осуществляется обход, вот дополнительное объяснение того, как работает {{jsxref("Statements/for...in", "array iteration and for...in", "#Array_iteration_and_for...in")}} .

      for (let i in iterable) {
         if (iterable.hasOwnProperty(i)) {
      @@ -259,7 +259,7 @@ iterable.foo = 'hello';
      } }
      -

      Цикл аналогичен предыдущему, но использует {{jsxref("Object.prototype.hasOwnProperty()", "hasOwnProperty()")}} для проверки того, собственное ли это свойство объекта или унаследованое. Выводятся только собственные свойства. Имена 012 и foo принадлежат только экземпляру объекта (не унаследованы). Методы arrCustom и objCustom не выводятся, поскольку они унаследованы.

      +

      Цикл аналогичен предыдущему, но использует {{jsxref("Object.prototype.hasOwnProperty()", "hasOwnProperty()")}} для проверки того, собственное ли это свойство объекта или унаследованное. Выводятся только собственные свойства. Имена 012 и foo принадлежат только экземпляру объекта (не унаследованы). Методы arrCustom и objCustom не выводятся, поскольку они унаследованы.

      for (let i of iterable) {
         console.log(i); // выведет 3, 5, 7
      @@ -279,7 +279,7 @@ iterable.foo = 'hello';
      {{SpecName('ES2015', '#sec-for-in-and-for-of-statements', 'for...of statement')}} {{Spec2('ES2015')}} - Изначальное опеределение. + Изначальное определение. {{SpecName('ESDraft', '#sec-for-in-and-for-of-statements', 'for...of statement')}} diff --git a/files/ru/web/javascript/reference/statements/for/index.html b/files/ru/web/javascript/reference/statements/for/index.html index 40945dffda..6b394ef5a5 100644 --- a/files/ru/web/javascript/reference/statements/for/index.html +++ b/files/ru/web/javascript/reference/statements/for/index.html @@ -20,9 +20,9 @@ translation_of: Web/JavaScript/Reference/Statements/for
      инициализация
      Выражение (в том числе выражения присвоения) или определение переменных. Обычно используется, чтобы инициализировать счётчик. Это выражение может опционально объявлять новые переменные с помощью ключевого слова var. Эти переменные видимы не только в цикле, т.е. в той же области области видимости, что и цикл for. Результат этого выражения отбрасывается.
      условие
      -
      Выражение, выполняющееся на каждой интерации цикла. Если выражение истинно, цикл выполняется. Условие не является обязательным. Если его нет, условие всегда считается истиной. Если выражение ложно, выполнение переходит к первому выражению, следующему за for.
      +
      Выражение, выполняющееся на каждой итерации цикла. Если выражение истинно, цикл выполняется. Условие не является обязательным. Если его нет, условие всегда считается истиной. Если выражение ложно, выполнение переходит к первому выражению, следующему за for.
      финальное выражение
      -
      Выражение, выполняющееся в конце интерации цикла. Происходит до следующего выполнения условия. Обычно используется для обновления или увеличения переменной счётчика.
      +
      Выражение, выполняющееся в конце итерации цикла. Происходит до следующего выполнения условия. Обычно используется для обновления или увеличения переменной счётчика.
      выражение
      Выражение, которое выполняется, когда условие цикла истинно. Чтоб выполнить множество выражений в цикле, используйте блок ({ ... }) для группировки этих выражений. Чтобы не выполнять никакого выражения в цикле, используйте пустое выражение (;).
      diff --git a/files/ru/web/javascript/reference/statements/function/index.html b/files/ru/web/javascript/reference/statements/function/index.html index 37ccac9a29..c9bd08cfb8 100644 --- a/files/ru/web/javascript/reference/statements/function/index.html +++ b/files/ru/web/javascript/reference/statements/function/index.html @@ -64,7 +64,7 @@ var notHoisted = function() {

      Использование function

      -

      Следующий код объявляет функцию, возврающую итоговое количество продаж, сложенное из количества продаж продуктов a, b и c.

      +

      Следующий код объявляет функцию, возвращающую итоговое количество продаж, сложенное из количества продаж продуктов a, b и c.

      function calc_sales(units_a, units_b, units_c) {
          return units_a*79 + units_b * 129 + units_c * 699;
      diff --git a/files/ru/web/javascript/reference/statements/import/index.html b/files/ru/web/javascript/reference/statements/import/index.html
      index bc4a369f52..d301e39327 100644
      --- a/files/ru/web/javascript/reference/statements/import/index.html
      +++ b/files/ru/web/javascript/reference/statements/import/index.html
      @@ -46,7 +46,7 @@ import("/module-name.js").then(module => {…}) // Динамический 
        
      module-name
      Имя модуля для импорта. Это зачастую относительный или абсолютный путь к .js файлу модуля без указания расширения .js. Некоторые сборщики могут разрешать или даже требовать использования расширения; проверяйте своё рабочее окружение. Допускаются только строки с одиночными или двойными кавычками.
      name
      -
      Имя локального обьекта, который будет использован как своего рода пространство имен, ссылающееся на импортируемые значения.
      +
      Имя локального объекта, который будет использован как своего рода пространство имен, ссылающееся на импортируемые значения.
      @@ -61,7 +61,7 @@ import("/module-name.js").then(module => {…}) // Динамический

      Описание

      -

      Параметр name это имя локального обьекта, который будет использован как своего рода пространство имен, ссылающееся на импортируемые значения. Параметры export определяют отдельные именованные значения, в то время как import * as name импортирует все значения. Примеры ниже объясняют синтаксис.

      +

      Параметр name это имя локального объекта, который будет использован как своего рода пространство имен, ссылающееся на импортируемые значения. Параметры export определяют отдельные именованные значения, в то время как import * as name импортирует все значения. Примеры ниже объясняют синтаксис.

      Импорт всего содержимого модуля

      @@ -87,7 +87,7 @@ import("/module-name.js").then(module => {…}) // Динамический

      Импорт значений с использованием более удобных имен

      -

      Вы можете переименовать значения, когда импортируете их. Например, этот код вставляет shortName в текующую область видимости.

      +

      Вы можете переименовать значения, когда импортируете их. Например, этот код вставляет shortName в текущую область видимости.

      import {reallyReallyLongModuleExportName as shortName}
         from '/modules/my-module.js';
      @@ -233,7 +233,7 @@ for (const link of document.querySelectorAll("nav > a")) { Спецификация Статус - Комменарий + Комментарий {{SpecName('ES2015', '#sec-imports', 'Imports')}} diff --git a/files/ru/web/javascript/reference/statements/let/index.html b/files/ru/web/javascript/reference/statements/let/index.html index 18b471121d..2f38f7e7ca 100644 --- a/files/ru/web/javascript/reference/statements/let/index.html +++ b/files/ru/web/javascript/reference/statements/let/index.html @@ -175,13 +175,13 @@ for ( let i=i ; i < 10 ; i++ ) {
      for (let expr1; expr2; expr3) statement
       
      -

      В этом примере expr2, expr3, statement  заключены в неявный блок, который содержит блок локальных переменных, объявленых конструкцией let expr1. Пример приведен выше.

      +

      В этом примере expr2, expr3, statement  заключены в неявный блок, который содержит блок локальных переменных, объявленных конструкцией let expr1. Пример приведен выше.

      Примеры

      let vs var

      -

      Когда let используется внутри блока, то область видимости переменной ограничивается этим блоком. Напомним, что отличие заключается в том, что областью видимости переменных, объявленных диретивой var, является вся функция, в которой они были объявлены.

      +

      Когда let используется внутри блока, то область видимости переменной ограничивается этим блоком. Напомним, что отличие заключается в том, что областью видимости переменных, объявленных директивой var, является вся функция, в которой они были объявлены.

      var a = 5;
       var b = 10;
      @@ -215,7 +215,7 @@ console.log(i); // i is not defined

      Поддержка let блоков была убрана в Gecko 44  {{bug(1023609)}}.

      -

      let блок предоставляет способ, ассоциировать значения с перемеными внутри области видимости этого блока, без влияния на значения переменных с теми же именами вне этого блока.

      +

      let блок предоставляет способ, ассоциировать значения с переменными внутри области видимости этого блока, без влияния на значения переменных с теми же именами вне этого блока.

      Синтаксис

      @@ -224,7 +224,7 @@ console.log(i); // i is not defined

      Описание

      -

      let блок предоставляет локальную область видимости для переменных. Работа его заключается в привязке нуля или более переменных к области видимости этого блока кода, другими словами, он является блоком операторов. Отметим, что область видимости переменных, объявленных директивой var, в блоке let, будет той же самой, что и если бы эти переменные были объявленны вне блока let, иными словами областью видимости таких переменных по-прежнему является функция. Скобки в блоке let являются обязательными. Опускание их приведет к синтаксической ошибке.

      +

      let блок предоставляет локальную область видимости для переменных. Работа его заключается в привязке нуля или более переменных к области видимости этого блока кода, другими словами, он является блоком операторов. Отметим, что область видимости переменных, объявленных директивой var, в блоке let, будет той же самой, что и если бы эти переменные были объявлены вне блока let, иными словами областью видимости таких переменных по-прежнему является функция. Скобки в блоке let являются обязательными. Опускание их приведет к синтаксической ошибке.

      Пример

      @@ -408,7 +408,7 @@ console.log(a); // 5
    • До SpiderMonkey 46 {{geckoRelease(46)}} выбрасывал {{jsxref("TypeError")}} на повторное объявление, вместо {{jsxref("SyntaxError")}} ({{bug(1198833)}}).
    • -
    • До SpiderMonkey 44 {{geckoRelease(44)}}, let был доступен только для блоков кода обернутых в HTML <script type="application/javascript;version=1.7">block (or higher version) и имел другую сематнику.
    • +
    • До SpiderMonkey 44 {{geckoRelease(44)}}, let был доступен только для блоков кода обернутых в HTML <script type="application/javascript;version=1.7">block (or higher version) и имел другую семантику.
    • Поддержка в {{domxref("Worker")}} код спрятан за dom.workers.latestJSVersion флагом ({{bug(487070)}}). Без версии let, флаг будет удален в будущем ({{bug(1219523)}}).
    • Соблюдение стандарта ES2015 для let в SpIderMonkey отслеживается в {{bug(950547)}}
    diff --git a/files/ru/web/javascript/reference/statements/return/index.html b/files/ru/web/javascript/reference/statements/return/index.html index 107173c310..37f44af769 100644 --- a/files/ru/web/javascript/reference/statements/return/index.html +++ b/files/ru/web/javascript/reference/statements/return/index.html @@ -12,7 +12,7 @@ translation_of: Web/JavaScript/Reference/Statements/return
    {{EmbedInteractiveExample("pages/js/statement-return.html")}}
    - +

    Синтаксис

    @@ -34,7 +34,7 @@ var demo = square(3); // значение demo будет равняться 9
    -

    Если возвращаемое значение не указано, вместо него возращается undefined.

    +

    Если возвращаемое значение не указано, вместо него возвращается undefined.

    Следующие выражения всегда прерывают выполнение функции:

    diff --git a/files/ru/web/javascript/reference/statements/try...catch/index.html b/files/ru/web/javascript/reference/statements/try...catch/index.html index 3609136b03..70766c3f48 100644 --- a/files/ru/web/javascript/reference/statements/try...catch/index.html +++ b/files/ru/web/javascript/reference/statements/try...catch/index.html @@ -57,7 +57,7 @@ translation_of: Web/JavaScript/Reference/Statements/try...catch

    Описание

    -

    Конструкция try содержит блок try, в котором находится одна или несколько инструкций (Блок ({} ) обязательно должен присутствовать, даже если выполняется всего одна инуструкция), и хотя бы один блок catch или finally. Таким образом, есть три основные формы конструкции try:

    +

    Конструкция try содержит блок try, в котором находится одна или несколько инструкций (Блок ({} ) обязательно должен присутствовать, даже если выполняется всего одна инструкция), и хотя бы один блок catch или finally. Таким образом, есть три основные формы конструкции try:

    1. try {...} catch {...}
    2. @@ -107,7 +107,7 @@ catch (e) { } }
    -

    Частый сценарий использованя — обработать известные исключения, а при неизвестных ошибках, пробросить их дальше:

    +

    Частый сценарий использования — обработать известные исключения, а при неизвестных ошибках, пробросить их дальше:

    try {
       myRoutine();
    @@ -200,7 +200,7 @@ window.removeEventListener('scroll', expensiveCalculations)
    -

    Другой пример: работа с файлами. В следующем фрагменте кода показывается, как скрипт открывает файл и записывает в него какие-то данные (в серверном окружении JavaScript имеет доступ к файловой системе). Во время записи может произойти ошибка. Но после открытия файл очень важно закрыть, потому что незакрытый файл может привести к утечкам памяти. В таких случях используется блок finally:

    +

    Другой пример: работа с файлами. В следующем фрагменте кода показывается, как скрипт открывает файл и записывает в него какие-то данные (в серверном окружении JavaScript имеет доступ к файловой системе). Во время записи может произойти ошибка. Но после открытия файл очень важно закрыть, потому что незакрытый файл может привести к утечкам памяти. В таких случаях используется блок finally:

    openMyFile();
     try {
    diff --git a/files/ru/web/javascript/reference/statements/var/index.html b/files/ru/web/javascript/reference/statements/var/index.html
    index 5468e52890..73954e6b67 100644
    --- a/files/ru/web/javascript/reference/statements/var/index.html
    +++ b/files/ru/web/javascript/reference/statements/var/index.html
    @@ -135,7 +135,7 @@ console.log(x, y); // 0, 1
     // значение x взято из глобальной переменной, как и ожидалось
     // значение переменной y доступно глобально
    -

    Такой же пример, но в строгом режими:

    +

    Такой же пример, но в строгом режиме:

    'use strict';
     
    diff --git a/files/ru/web/javascript/reference/statements/with/index.html b/files/ru/web/javascript/reference/statements/with/index.html
    index 7eb5d5d66a..208863d500 100644
    --- a/files/ru/web/javascript/reference/statements/with/index.html
    +++ b/files/ru/web/javascript/reference/statements/with/index.html
    @@ -24,7 +24,7 @@ translation_of: Web/JavaScript/Reference/Statements/with
     
     

    Описание

    -

    JavaScript ищет unqualified имя, исследуя  цепочку областей видимости, связанную с выполнением скрипта или функции, сожержащих это unqualified имя. Оператор 'with' добавляет данный объект в начало цепочки областей видимости в ходе исследования тела его оператора. Если unqualified имя используемое в теле соответствует свойству в цепочке областей видимости, тогда имя привязывается к свойству и объекту, содержащему это свойство. В противном случае возвращаетя {{jsxref("ReferenceError")}}.

    +

    JavaScript ищет unqualified имя, исследуя  цепочку областей видимости, связанную с выполнением скрипта или функции, содержащих это unqualified имя. Оператор 'with' добавляет данный объект в начало цепочки областей видимости в ходе исследования тела его оператора. Если unqualified имя используемое в теле соответствует свойству в цепочке областей видимости, тогда имя привязывается к свойству и объекту, содержащему это свойство. В противном случае возвращается {{jsxref("ReferenceError")}}.

    Использование оператора with не рекомендуется, и недопустимо в строгом режиме (strict mode)  ECMAScript 5 . Рекомендуемой альтернативой может стать связывание объекта, чьи свойства Вы хотели получить, с коротким именем переменной.
    diff --git a/files/ru/web/javascript/reference/strict_mode/index.html b/files/ru/web/javascript/reference/strict_mode/index.html index bf0b7d6571..7b35f93897 100644 --- a/files/ru/web/javascript/reference/strict_mode/index.html +++ b/files/ru/web/javascript/reference/strict_mode/index.html @@ -18,7 +18,7 @@ translation_of: Web/JavaScript/Reference/Strict_mode

    Активизация строгого режима

    -

    Строгий режим применяется ко всему скрипту или к отдельным функциям. Он не может быть применён к блокам операторов, заключенных в фигурные скобки -- попытка использовать его в подобном контексте будет проигнорирована. Код в eval, Function, в аттрибутах обработчиков событий, в строках, переданных в setTimeout, и т.п. рассматривается как законченный скрипт, и активизация строгого режима в нём выполняется ожидаемым образом.

    +

    Строгий режим применяется ко всему скрипту или к отдельным функциям. Он не может быть применён к блокам операторов, заключенных в фигурные скобки -- попытка использовать его в подобном контексте будет проигнорирована. Код в eval, Function, в атрибутах обработчиков событий, в строках, переданных в setTimeout, и т.п. рассматривается как законченный скрипт, и активизация строгого режима в нём выполняется ожидаемым образом.

    Строгий режим для скриптов

    @@ -206,7 +206,7 @@ eval('var y; delete y;'); // !!!
    синтаксическая ошибк

    Упрощение eval и arguments

    -

    В строгом режиме снижается количество странностей в поведении arguments и eval, оба из которых примешивают определённое количество магии в обычный код. Так eval добавляет или удаляет переменные и меняет их значения, а переменная arguments может удивить своими проиндексированными свойствами, которые являются ссылками (синонимами) для проименованных аргументов функции. Строгий режим делает большой шаг в прояснении этих двух ключевых слов, но полное их обуздание произойдет лишь в следующей редакции ECMAScript.

    +

    В строгом режиме снижается количество странностей в поведении arguments и eval, оба из которых примешивают определённое количество магии в обычный код. Так eval добавляет или удаляет переменные и меняет их значения, а переменная arguments может удивить своими проиндексированными свойствами, которые являются ссылками (синонимами) для поименованных аргументов функции. Строгий режим делает большой шаг в прояснении этих двух ключевых слов, но полное их обуздание произойдет лишь в следующей редакции ECMAScript.

    Во-первых, ключевые слова eval и arguments не могут быть переопределены или изменены. Все подобные попытки это сделать являются синтаксическими ошибками:

    @@ -242,7 +242,7 @@ var f = function() { return arguments.callee; }; f(); // выдаст TypeError
    -

    "Обезопасенный" JavaScript

    +

    "Безопасный" JavaScript

    Строгий режим упрощает написание "безопасного" JavaScript кода. Сейчас некоторые веб-сайты предоставляют пользователям возможность писать JavaScript, который будет выполняться на сайте от имени других пользователей. В браузерах, JavaScript может иметь доступ к приватной информации пользователя, поэтому, в целях ограничения доступа к запретной функциональности, такой JavaScript перед выполнением должен быть частично преобразован. Гибкость JavaScript делает это практически невозможным без многочисленных проверок во время исполнения. Функционал, исполняемый языком иногда столь массивен, что выполнение любых дополнительных проверок во время исполнения скрипта приведет к значительной потере производительности. Однако, некоторые особенности строгого режима, плюс обязательное требование того, чтобы JavaScript, загруженный пользователем, имел строгий режим и вызывался определенным способом, существенно снижают потребность в таких проверках.

    diff --git a/files/ru/web/javascript/reference/strict_mode/transitioning_to_strict_mode/index.html b/files/ru/web/javascript/reference/strict_mode/transitioning_to_strict_mode/index.html index 8bbf8096cf..5447834c4b 100644 --- a/files/ru/web/javascript/reference/strict_mode/transitioning_to_strict_mode/index.html +++ b/files/ru/web/javascript/reference/strict_mode/transitioning_to_strict_mode/index.html @@ -117,7 +117,7 @@ s.opacity = 1;

    Строго-нейтральный код

    -

    Потенциальный "недостаток" перевода кода в строгий режим - это отличия в семантике старых браузеров, в которых он не реализован. В некоторых редких случаях (как при неудачной конкатенации и минификации) ваш код может не запускаться в режиме, в котором вы его писали и тестировали. Здесь несколько правил, как сделать ваш код строго-нейтральным (strictness-neutral):

    +

    Потенциальный "недостаток" перевода кода в строгий режим - это отличия в семантике старых браузеров, в которых он не реализован. В некоторых редких случаях (как при неудачной конкатенации и модификации) ваш код может не запускаться в режиме, в котором вы его писали и тестировали. Здесь несколько правил, как сделать ваш код строго-нейтральным (strictness-neutral):

    1. Пишите ваш код в строгом режиме и убедитесь в отсутствии ошибок только строго режима (из секции выше "Новые ошибки времени выполнения").
    2. diff --git a/files/ru/web/javascript/reference/trailing_commas/index.html b/files/ru/web/javascript/reference/trailing_commas/index.html index 9cbe5ae9ea..322cfe9080 100644 --- a/files/ru/web/javascript/reference/trailing_commas/index.html +++ b/files/ru/web/javascript/reference/trailing_commas/index.html @@ -40,7 +40,7 @@ arr.length; // 5

      Объекты

      -

      Начиная с ECMAScript 5, висящие запятые в объектак также допустимы:

      +

      Начиная с ECMAScript 5, висящие запятые в объектах также допустимы:

      var object = {
         foo: "bar",
      @@ -76,9 +76,9 @@ var obj = {
       };
       
      -

      Вызов функци

      +

      Вызов функции

      -

      Следующие вызововы функций допустимы и равнозначны друг другу.

      +

      Следующие вызовов функций допустимы и равнозначны друг другу.

      f(p);
       f(p,);
      @@ -121,7 +121,7 @@ var {p, q,} = o;
       
       

      Висящие запятые в JSON

      -

      Висящие запятые в объекте допустимы только в ECMAScript 5. Так как JSON основан на синтаксисе JavaScript старше, чем ES5, висящие запятые недопускаются в JSON.

      +

      Висящие запятые в объекте допустимы только в ECMAScript 5. Так как JSON основан на синтаксисе JavaScript старше, чем ES5, висящие запятые не допускаются в JSON.

      Обе строки генерируют SyntaxError:

      -- cgit v1.2.3-54-g00ecf