From 95aca4b4d8fa62815d4bd412fff1a364f842814a Mon Sep 17 00:00:00 2001 From: Ryan Johnson Date: Thu, 29 Apr 2021 16:16:42 -0700 Subject: remove retired locales (#699) --- .../global_objects/string/substring/index.html | 181 --------------------- 1 file changed, 181 deletions(-) delete mode 100644 files/uk/web/javascript/reference/global_objects/string/substring/index.html (limited to 'files/uk/web/javascript/reference/global_objects/string/substring/index.html') diff --git a/files/uk/web/javascript/reference/global_objects/string/substring/index.html b/files/uk/web/javascript/reference/global_objects/string/substring/index.html deleted file mode 100644 index 146c0e05b5..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/substring/index.html +++ /dev/null @@ -1,181 +0,0 @@ ---- -title: String.prototype.substring() -slug: Web/JavaScript/Reference/Global_Objects/String/substring -tags: - - JavaScript - - String - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/substring ---- -
{{JSRef}}
- -

Метод substring() повертає частину рядка між початковим та кінцевим індексами, або до кінця рядка.

- -
{{EmbedInteractiveExample("pages/js/string-substring.html")}}
- - - -

Синтаксис

- -
str.substring(indexStart[, indexEnd])
- -

Параметри

- -
-
indexStart
-
Індекс першого символу, який потрібно включити у повернений рядок.
-
indexEnd {{optional_inline}}
-
Індекс першого символу, який непотрібно включати у повернений рядок.
-
- -

Значення, що повертається

- -

Новий рядок, що містить вказану частину наданого рядка.

- -

Опис

- -

Метод substring() вирізає символи, починаючи з indexStart, і до (але не включно зindexEnd. Зокрема:

- - - -

Будь-яке значення аргументу менше за 0 чи більше за stringName.length вважається рівним 0 та stringName.length, відповідно.

- -

Будь-яке значення аргументу, що є {{jsxref("NaN")}}, вважається рівним 0.

- -

Приклади

- -

Використання substring()

- -

Наступний приклад використовує substring(), щоб вивести символи з рядка 'Mozilla':

- -
let anyString = 'Mozilla'
-
-// Виводить 'M'
-console.log(anyString.substring(0, 1))
-console.log(anyString.substring(1, 0))
-
-// Виводить 'Mozill'
-console.log(anyString.substring(0, 6))
-
-// Виводить 'lla'
-console.log(anyString.substring(4))
-console.log(anyString.substring(4, 7))
-console.log(anyString.substring(7, 4))
-
-// Виводить 'Mozilla'
-console.log(anyString.substring(0, 7))
-console.log(anyString.substring(0, 10))
-
- -

Використання substring() з властивістю length

- -

Наступний приклад використовує метод substring() та властивість {{jsxref("String.length", "length")}}, щоб отримати останні символи певного рядка. Цей метод, можливо, легше запам'ятати, враховуючи, що вам не потрібно знати початковий та кінцевий індекси, як у попередніх прикладах.

- -
// Виводить 'illa', останні 4 символи
-let anyString = 'Mozilla'
-let anyString4 = anyString.substring(anyString.length - 4)
-console.log(anyString4)
-
-// Виводить 'zilla' останні 5 символів
-let anyString = 'Mozilla'
-let anyString5 = anyString.substring(anyString.length - 5)
-console.log(anyString5)
-
- -

Різниця між substring() та substr()

- -

Існує невелика відмінність між методами substring() та {{jsxref("String.substr", "substr()")}}, тому слід бути обережними, щоб не переплутати їх.

- -

Аргументи substring() відображають початковий та кінцевий індекси, в той час, як аргументи substr() відображають початковий індекс та кількість символів, яку необхідно включити у повернений рядок.

- -

Крім того, метод substr() вважається застарілою функціональністю ECMAScript та може бути прибраний з майбутніх версій, а отже, його краще уникати, де можливо.

- -
let text = 'Mozilla'
-console.log(text.substring(2,5))  // => "zil"
-console.log(text.substr(2,3))     // => "zil"
- -

Різниця між substring() та slice()

- -

Методи substring() та {{jsxref("String.slice", "slice()")}} майже ідентичні, але між ними є пара невеликих відмінностей, особливо у поводженні з від'ємними аргументами.

- -

Метод substring() міняє місцями свої аргументи, якщо indexStart більший за indexEnd, це означає, що рядок все одно буде повернений. Метод {{jsxref("String.slice", "slice()")}} повертає порожній рядок у цьому випадку.

- -
let text = 'Mozilla'
-console.log(text.substring(5, 2))  // => "zil"
-console.log(text.slice(5, 2))      // => ""
-
- -

Якщо один або обидва аргументи від'ємні чи NaN, метод substring() вважає, що вони дорівнюють 0.

- -
console.log(text.substring(-5, 2))  // => "Mo"
-console.log(text.substring(-5, -2)) // => ""
-
- -

slice() також вважає аргументи NaN рівними 0, але, коли отримує від'ємні значення, він рахує індекс у зворотньому напрямку, з кінця рядка.

- -
console.log(text.slice(-5, 2))   // => ""
-console.log(text.slice(-5, -2))  // => "zil"
-
- -

Дивіться більше прикладів з від'ємними числами на сторінці {{jsxref("String.slice", "slice()")}}.

- -

Заміна підрядка всередині рядка

- -

Наступний приклад замінює підрядок всередині рядка. Він замінить і окремі символи, і підрядки. Виклик функції в кінці прикладу змінює рядок Прекрасний новий світ на Прекрасний новий сайт.

- -
// Замінює oldS на newS у рядку fullS
-function replaceString(oldS, newS, fullS) {
-  for (let i = 0; i < fullS.length; ++i) {
-    if (fullS.substring(i, i + oldS.length) == oldS) {
-      fullS = fullS.substring(0, i) + newS + fullS.substring(i + oldS.length, fullS.length)
-    }
-  }
-  return fullS
-}
-
-replaceString('світ', 'сайт', 'Прекрасний новий світ')
-
- -

Зауважте, що це може призвести до нескінченного циклу, якщо oldS сам є підрядком newS — наприклад, якби ви спробували замінити тут 'світ' на 'всесвіт'.

- -

Кращим методом заміни рядків є наступний:

- -
function replaceString(oldS, newS, fullS) {
-  return fullS.split(oldS).join(newS)
-}
-
- -

Наведений вище код є прикладом операцій з підрядками. Якщо вам необхідно замінювати підрядки, в більшості випадків вам краще скористатись {{jsxref("String.prototype.replace()")}}.

- -

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

- - - - - - - - - - - - -
Специфікація
{{SpecName('ESDraft', '#sec-string.prototype.substring', 'String.prototype.substring')}}
- -

Сумісність з веб-переглядачами

- - - -

{{Compat("javascript.builtins.String.substring")}}

- -

Див. також

- - -- cgit v1.2.3-54-g00ecf