From 980fe00a74a9ad013b945755415ace2e5429c3c2 Mon Sep 17 00:00:00 2001 From: Alexey Pyltsyn Date: Wed, 27 Oct 2021 02:31:24 +0300 Subject: [RU] Remove notranslate (#2874) --- .../reference/global_objects/array/slice/index.html | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'files/ru/web/javascript/reference/global_objects/array/slice') 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 d5c9f8b897..86299563c0 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 @@ -20,7 +20,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/slice

Синтаксис

-
arr.slice([begin[, end]])
+
arr.slice([begin[, end]])

Параметры

@@ -56,7 +56,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/slice

Пример: возврат части существующего массива

-
// Пример: наши хорошие друзья цитрусовые среди фруктов
+
// Пример: наши хорошие друзья цитрусовые среди фруктов
 var fruits = ['Банан', 'Апельсин', 'Лимон', 'Яблоко', 'Манго'];
 var citrus = fruits.slice(1, 3);
 
@@ -67,7 +67,7 @@ var citrus = fruits.slice(1, 3);
 
 

В следующем примере метод slice() создаёт новый массив, newCar, из массива myCar. Оба содержат ссылку на объект myHonda. Когда цвет в объекте myHonda изменяется на багровый, оба массива замечают это изменение.

-
// Используя slice, создаём newCar из myCar.
+
// Используя slice, создаём newCar из myCar.
 var myHonda = { color: 'красный', wheels: 4, engine: { cylinders: 4, size: 2.2 } };
 var myCar = [myHonda, 2, 'в хорошем состоянии', 'приобретена в 1997'];
 var newCar = myCar.slice(0, 2);
@@ -90,7 +90,7 @@ console.log('newCar[0].color = ' + newCar[0].color);
 
 

Этот скрипт выведет:

-
myCar = [{color:'красный', wheels:4, engine:{cylinders:4, size:2.2}}, 2,
+
myCar = [{color:'красный', wheels:4, engine:{cylinders:4, size:2.2}}, 2,
          'в хорошем состоянии', 'приобретена в 1997']
 newCar = [{color:'красный', wheels:4, engine:{cylinders:4, size:2.2}}, 2]
 myCar[0].color = красный
@@ -104,7 +104,7 @@ newCar[0].color = багровый
 
 

Метод slice() также может использоваться для преобразования массивоподобных объектов / коллекций в новый массив Array. Вам просто нужно привязать метод к объекту. Псевдомассив {{jsxref("Functions_and_function_scope/arguments", "arguments")}} внутри функции как раз является примером «массивоподобного объекта».

-
function list() {
+
function list() {
   return Array.prototype.slice.call(arguments, 0);
 }
 
@@ -113,7 +113,7 @@ var list1 = list(1, 2, 3); // [1, 2, 3]
 
 

Привязка может быть осуществлена посредством функции .call() из прототипа функции {{jsxref("Function.prototype")}}, также запись может быть сокращена до [].slice.call(arguments) вместо использования Array.prototype.slice.call(). В любом случае, она может быть упрощена посредством использования функции {{jsxref("Function.prototype.bind()", "bind()")}}.

-
var unboundSlice = Array.prototype.slice;
+
var unboundSlice = Array.prototype.slice;
 var slice = Function.prototype.call.bind(unboundSlice);
 
 function list() {
@@ -127,7 +127,7 @@ var list1 = list(1, 2, 3); // [1, 2, 3]
 
 

Хотя спецификация не требует от хост-объектов (например, объектов DOM) следовать поведению Mozilla при преобразовании с помощью Array.prototype.slice() и IE < 9 так не делает, версии IE, начиная с 9-й это умеют. «Прокладывание» позволяет добиться надёжного кросс-браузерного поведения. Пока другие современные браузеры будут поддерживать эту способность, что и делают в настоящее время IE, Mozilla, Chrome, Safari и Opera, разработчики, читая (поддерживающий DOM) код функции slice(), опирающийся на эту прокладку, не будут вводиться в заблуждение его семантикой; они могут смело полагаться на текущую семантику, являющуюся, видимо, де-факто стандартным поведением. (Прокладка также исправляет поведение IE, позволяя работать со вторым аргументом slice(), явно определённым как {{jsxref("Global_Objects/null", "null")}}/{{jsxref("Global_Objects/undefined", "undefined")}}, поскольку более ранние версии IE такое не позволяют, но все современные браузеры, в том числе IE >= 9, поддерживают данное поведение.)

-
/**
+
/**
  * Прокладка для "исправления" отсутствия поддержки в IE < 9 применения slice
  * к хост-объектам вроде NamedNodeMap, NodeList и HTMLCollection
  * (технически, поскольку хост-объекты зависят от реализации,
-- 
cgit v1.2.3-54-g00ecf