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/@@iterator/index.html | 78 ----- .../global_objects/string/anchor/index.html | 83 ----- .../reference/global_objects/string/big/index.html | 73 ---- .../global_objects/string/blink/index.html | 70 ---- .../global_objects/string/bold/index.html | 66 ---- .../global_objects/string/charat/index.html | 316 ----------------- .../global_objects/string/charcodeat/index.html | 161 --------- .../global_objects/string/codepointat/index.html | 142 -------- .../global_objects/string/concat/index.html | 88 ----- .../global_objects/string/endswith/index.html | 90 ----- .../global_objects/string/fixed/index.html | 62 ---- .../global_objects/string/fontcolor/index.html | 81 ----- .../global_objects/string/fontsize/index.html | 80 ----- .../global_objects/string/fromcharcode/index.html | 109 ------ .../global_objects/string/fromcodepoint/index.html | 171 ---------- .../global_objects/string/includes/index.html | 125 ------- .../reference/global_objects/string/index.html | 374 --------------------- .../global_objects/string/indexof/index.html | 154 --------- .../global_objects/string/italics/index.html | 65 ---- .../global_objects/string/lastindexof/index.html | 107 ------ .../global_objects/string/length/index.html | 105 ------ .../global_objects/string/link/index.html | 72 ---- .../global_objects/string/localecompare/index.html | 173 ---------- .../global_objects/string/match/index.html | 194 ----------- .../global_objects/string/matchall/index.html | 143 -------- .../global_objects/string/normalize/index.html | 226 ------------- .../global_objects/string/padend/index.html | 66 ---- .../global_objects/string/padstart/index.html | 84 ----- .../reference/global_objects/string/raw/index.html | 117 ------- .../global_objects/string/repeat/index.html | 119 ------- .../global_objects/string/replace/index.html | 240 ------------- .../global_objects/string/replaceall/index.html | 169 ---------- .../global_objects/string/search/index.html | 107 ------ .../global_objects/string/slice/index.html | 116 ------- .../global_objects/string/small/index.html | 70 ---- .../global_objects/string/split/index.html | 220 ------------ .../global_objects/string/startswith/index.html | 96 ------ .../global_objects/string/strike/index.html | 67 ---- .../global_objects/string/string/index.html | 64 ---- .../reference/global_objects/string/sub/index.html | 68 ---- .../global_objects/string/substr/index.html | 118 ------- .../global_objects/string/substring/index.html | 181 ---------- .../reference/global_objects/string/sup/index.html | 66 ---- .../string/tolocalelowercase/index.html | 106 ------ .../string/tolocaleuppercase/index.html | 107 ------ .../global_objects/string/tolowercase/index.html | 74 ---- .../global_objects/string/tosource/index.html | 56 --- .../global_objects/string/tostring/index.html | 65 ---- .../global_objects/string/touppercase/index.html | 88 ----- .../global_objects/string/trim/index.html | 84 ----- .../global_objects/string/trimend/index.html | 80 ----- .../global_objects/string/trimstart/index.html | 115 ------- .../global_objects/string/valueof/index.html | 64 ---- 53 files changed, 6215 deletions(-) delete mode 100644 files/uk/web/javascript/reference/global_objects/string/@@iterator/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/anchor/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/big/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/blink/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/bold/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/charat/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/charcodeat/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/codepointat/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/concat/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/endswith/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/fixed/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/fontcolor/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/fontsize/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/fromcharcode/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/fromcodepoint/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/includes/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/indexof/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/italics/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/lastindexof/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/length/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/link/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/localecompare/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/match/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/matchall/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/normalize/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/padend/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/padstart/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/raw/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/repeat/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/replace/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/replaceall/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/search/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/slice/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/small/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/split/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/startswith/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/strike/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/string/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/sub/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/substr/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/substring/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/sup/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/tolocalelowercase/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/tolocaleuppercase/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/tolowercase/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/tosource/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/tostring/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/touppercase/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/trim/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/trimend/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/trimstart/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/string/valueof/index.html (limited to 'files/uk/web/javascript/reference/global_objects/string') diff --git a/files/uk/web/javascript/reference/global_objects/string/@@iterator/index.html b/files/uk/web/javascript/reference/global_objects/string/@@iterator/index.html deleted file mode 100644 index 22399ee081..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/@@iterator/index.html +++ /dev/null @@ -1,78 +0,0 @@ ---- -title: 'String.prototype[@@iterator]()' -slug: Web/JavaScript/Reference/Global_Objects/String/@@iterator -tags: - - ECMAScript 2015 - - JavaScript - - String - - Ітератор - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/@@iterator ---- -
{{JSRef}}
- -

Метод [@@iterator]() повертає новий об'єкт Iterator, який перебирає коди символів рядкового значення, повертаючи код кожного символа у вигляді рядкового значення.

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

Синтаксис

- -
str[Symbol.iterator]
- -

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

- -

Новий об'єкт Iterator.

- -

Приклади

- -

Використання [@@iterator]()

- -
var str = 'A\uD835\uDC68';
-
-var strIter = str[Symbol.iterator]();
-
-console.log(strIter.next().value); // "A"
-console.log(strIter.next().value); // "\uD835\uDC68"
-
- -

Використання [@@iterator]() з for..of

- -
var str = 'A\uD835\uDC68B\uD835\uDC69C\uD835\uDC6A';
-
-for (var v of str) {
-  console.log(v);
-}
-// "A"
-// "\uD835\uDC68"
-// "B"
-// "\uD835\uDC69"
-// "C"
-// "\uD835\uDC6A"
-
- -

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

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

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

- - - -

{{Compat("javascript.builtins.String.@@iterator")}}

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/anchor/index.html b/files/uk/web/javascript/reference/global_objects/string/anchor/index.html deleted file mode 100644 index aa1424790a..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/anchor/index.html +++ /dev/null @@ -1,83 +0,0 @@ ---- -title: String.prototype.anchor() -slug: Web/JavaScript/Reference/Global_Objects/String/anchor -tags: - - JavaScript - - String - - метод - - не рекомендований -translation_of: Web/JavaScript/Reference/Global_Objects/String/anchor ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод anchor() створює рядок, який складається з початкового тегу <a name="...">, далі якийсь текст, а за ним кінцевий тег </a>.

- -
-

Не використовуйте цей метод. Використовуйте замість нього DOM API. Також специфікація HTML більше не дозволяє елементу <a> мати атрибут name, тому цей метод навіть не створює коректну розмітку.

-
- -

Синтаксис

- -
str.anchor(name)
- -

Параметри

- -
-
name
-
Рядок, що відображає атрибут name тега, що буде створений.
-
- -

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

- -

Рядок, що складається з початкового тегу  <a name="name">, далі текст str, і після нього кінцевий тег </a>.

- -

Опис

- -

Не використовуйте цей метод. Використовуйте замість нього DOM API. Також специфікація HTML більше не дозволяє елементу <a> мати артибут name, тому цей метод навіть не створює коректну розмітку.

- -

Приклади

- -

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

- -
var myString = 'Зміст';
-
-document.body.innerHTML = myString.anchor('contents_anchor');
-
- -

створить наступний HTML:

- -
<a name="contents_anchor">Зміст</a>
-
- -

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

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

Поліфіл

- -
if (!String.prototype.anchor)
-    String.prototype.anchor = function(x){
-        return '<a name="' + x + '">' + this + '</a>'
-    }
-
- -

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/big/index.html b/files/uk/web/javascript/reference/global_objects/string/big/index.html deleted file mode 100644 index 40f46db96d..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/big/index.html +++ /dev/null @@ -1,73 +0,0 @@ ---- -title: String.prototype.big() -slug: Web/JavaScript/Reference/Global_Objects/String/big -tags: - - JavaScript - - String - - застарілий - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/big ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод big() створює HTML-елемент <big>, який відображає рядок великим шрифтом.

- -
-

Примітка щодо використання: Елемент <big> був прибраний у HTML5 та не має більше використовуватись. Замість нього веб-розробникам варто використовувати властивості CSS.

-
- -

Синтаксис

- -
str.big()
- -

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

- -

Рядок, що містить HTML-елемент <big>.

- -

Опис

- -

Метод big() вбудовує рядок у тег <big>: "<big>str</big>".

- -

Приклади

- -

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

- -

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

- -
var worldString = 'Привіт';
-
-console.log(worldString.small());     // <small>Привіт</small>
-console.log(worldString.big());       // <big>Привіт</big>
-console.log(worldString.fontsize(7)); // <fontsize=7>Привіт</fontsize>
-
- -

З об'єктом element.style ви можете отримати атрибут елемента style та маніпулювати ним в загальному стилі, наприклад:

- -
document.getElementById('yourElemId').style.fontSize = '2em';
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/blink/index.html b/files/uk/web/javascript/reference/global_objects/string/blink/index.html deleted file mode 100644 index 2c562cc2ca..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/blink/index.html +++ /dev/null @@ -1,70 +0,0 @@ ---- -title: String.prototype.blink() -slug: Web/JavaScript/Reference/Global_Objects/String/blink -tags: - - JavaScript - - String - - метод - - не рекомендований - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/blink ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод blink() створює HTML-елемент <blink>, який виводить текст, що блимає.

- -
-

Застереження: Блимаючий текст не схвалюється у кількох стандартах доступності. Сам елемент <blink> нестандартний та не рекомендований!

-
- -

Синтаксис

- -
str.blink()
- -

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

- -

Рядок, що містить HTML-елемент <blink>.

- -

Опис

- -

Метод blink() вбудовує рядок у тег <blink>: "<blink>str</blink>".

- -

Приклади

- - - -

Наступний приклад використовує рядкові методи, щоб змінити форматування рядка:

- -
var worldString = 'Привіт';
-
-console.log(worldString.blink());   // <blink>Привіт</blink>
-console.log(worldString.bold());    // <b>Привіт</b>
-console.log(worldString.italics()); // <i>Привіт</i>
-console.log(worldString.strike());  // <strike>Привіт</strike>
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/bold/index.html b/files/uk/web/javascript/reference/global_objects/string/bold/index.html deleted file mode 100644 index 1f0ddd661d..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/bold/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -title: String.prototype.bold() -slug: Web/JavaScript/Reference/Global_Objects/String/bold -tags: - - JavaScript - - String - - метод - - не рекомендований - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/bold ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод bold() створює HTML-елемент <b>, який відображає рядок жирним шрифтом.

- -

Синтаксис

- -
str.bold()
- -

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

- -

Рядок, що містить HTML-елемент <b>.

- -

Опис

- -

Метод bold() вбудовує рядок у тег <b> : "<b>str</b>".

- -

Приклади

- -

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

- -

Наступний приклад використовує рядкові методи, щоб змінити форматування рядка:

- -
var worldString = 'Привіт';
-
-console.log(worldString.blink());   // <blink>Привіт</blink>
-console.log(worldString.bold());    // <b>Привіт</b>
-console.log(worldString.italics()); // <i>Привіт</i>
-console.log(worldString.strike());  // <strike>Привіт</strike>
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/charat/index.html b/files/uk/web/javascript/reference/global_objects/string/charat/index.html deleted file mode 100644 index 004400895c..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/charat/index.html +++ /dev/null @@ -1,316 +0,0 @@ ---- -title: String.prototype.charAt() -slug: Web/JavaScript/Reference/Global_Objects/String/charAt -tags: - - JavaScript - - Method - - Prototype - - String - - Довідка -translation_of: Web/JavaScript/Reference/Global_Objects/String/charAt ---- -
{{JSRef}}
- -

Метод charAt() створює і вертає підрядок, що міститиме лише один символ (кодова одиниця UTF-16), розташований у рядку із зазначеним зсувом.

- -

Синтаксис

- -
str.charAt(index)
- -

Параметри

- -
-
index
-
Індекс символа у рядку, ціле число від 0 до str.length - 1. Якщо не зазначено (метод викликано без аргументів), метод повертає перший символ рядка.
-
- -

Вертає

- -

Підрядок з одного символа (одна кодова одиниця UTF-16) отриманого за вказаним індексом, або порожній рядок, якщо index вказує за межі рядка (менше 0 чи понад str.length - 1).

- -

Опис

- -

Кожен символ рядка має індекс, що зростає зліва направо. Лік починається від нуля, тож перший символ має індекс 0, а останній — str.length - 1. Якщо зазначено індекс, що за ці межі виходить, метод chartAt() вертає порожній рядок.

- -

Якщо індекс не зазначено для метода charAt(), буде задіяно типове значення 0.

- -

Приклади

- -

Виведення різних символів рядка

- -

Цей приклад дістає та виводить до консолі різні символи рядка «Хай йому грець»:

- -
var str = 'Хай йому грець';
-
-// Індекс не зазначено, буде неявно задіяно значення 0
-console.log(str.charAt());    // виводить "Х"
-
-console.log(str.charAt(0));   // виводить "Х"
-console.log(str.charAt(1));   // виводить "а"
-console.log(str.charAt(2));   // виводить "й"
-
-console.log(str.charAt(-1));  // виводить ""
-console.log(str.charAt(99));  // виводить ""
-
- -

Отримання цілого символа

- -

Позаяк деякі символи в UTF-16 подаються двома кодовими одиницями, слід зважати на те, що метод charAt() дістає їх з рядка нарізно, а отже задля отримання цілого символа доведеться їх об'єднати.

- -

Наведений нижче код призначено для послідовної обробки рядків, що можуть містити такі складені символи (не належать до Основної Багатомовної Площини (ОБП) Unicode):

- -
// Символи поза ОБП можна було б вжити безпосередньо
-var str = 'A \uD87E\uDC04 Z';
-
-for (var i = 0, chr; i < str.length; i++) {
-  // Просто додайте цю перевірку на початку кожного циклу з перебору символів
-  // і завжди матимете складені символи повністю, а не половини складеного
-  // символа нарізно.
-  if ((chr = getWholeChar(str, i)) === false) {
-    continue;
-  }
-
-  console.log(chr);
-}
-
-function getWholeChar(str, i) {
-  var code = str.charCodeAt(i);
-
-  // Значення зсуву «i» за межами рядка
-  if (Number.isNaN(code)) {
-    return '';
-  }
-  if (code < 0xD800 || code > 0xDFFF) {
-    return str.charAt(i);
-  }
-
-  // Старша половина (можна замінити друге значення на 0xDB7F й тлумачити
-  // «старші половини приватного вжитку» як окремі символи).
-  if (0xD800 <= code && code <= 0xDBFF) {
-    if (str.length <= (i + 1)) {
-      throw 'High surrogate without following low surrogate';
-    }
-
-    var next = str.charCodeAt(i + 1);
-    if (0xDC00 > next || next > 0xDFFF) {
-      throw 'High surrogate without following low surrogate';
-    }
-    return str.charAt(i) + str.charAt(i + 1);
-  }
-
-  // Молодша половина (0xDC00 <= code && code <= 0xDFFF)
-  if (i === 0) {
-    throw 'Low surrogate without preceding high surrogate';
-  }
-  var prev = str.charCodeAt(i - 1);
-
-  // Можна замінити друге значення на 0xDB7F й тлумачити
-  // «старші половини приватного вжитку» як окремі символи.
-  if (0xD800 > prev || prev > 0xDBFF) {
-    throw 'Low surrogate without preceding high surrogate';
-  }
-
-  // Молодшу половину було оброблено разом із старшою, тож тепер
-  // ми її пропускаємо.
-  return false;
-}
-
- -

У середовищі ECMAScript 2016, що підтримує присвоєння {{jsxref("Operators/Деструктуризація", "деструктурованням")}}, можна трохи поліпшити легкочитність коду, повертаючи з функції також оновлене (якщо останній символ був складений) значення зсуву:

- -
// Символи поза ОБП можна було б вжити безпосередньо
-var str = 'A\uD87E\uDC04Z';
-for (var i = 0, chr; i < str.length; i++) {
-  [chr, i] = getWholeCharAndI(str, i);
-  // Просто додайте цей виклик на початку кожного циклу з перебору символів
-  // і завжди матимете складені символи повністю, а не половини складеного
-  // символа нарізно.
-  // Значення «i» буде оновлено, якщо метод натрапить на складений символ.
-
-  console.log(chr);
-}
-
-function getWholeCharAndI(str, i) {
-  var code = str.charCodeAt(i);
-
-  // Значення зсуву «i» за межами рядка
-  if (Number.isNaN(code)) {
-    return ['', i];
-  }
-  if (code < 0xD800 || code > 0xDFFF) {
-   / / Звичайний символ, просто лишаємо все як є.
-    return [str.charAt(i), i];
-  }
-
-  // Старша половина (можна замінити друге значення на 0xDB7F й тлумачити
-  // «старші половини приватного вжитку» як окремі символи).
-  if (0xD800 <= code && code <= 0xDBFF) {
-    if (str.length <= (i + 1)) {
-      throw 'High surrogate without following low surrogate';
-    }
-    var next = str.charCodeAt(i + 1);
-    if (0xDC00 > next || next > 0xDFFF) {
-      throw 'High surrogate without following low surrogate';
-    }
-
-    // Зібрати складений символ докупи й повернути збільшений зсув
-    return [str.charAt(i) + str.charAt(i + 1), i + 1];
-  }
-
-  // Low surrogate (0xDC00 <= code && code <= 0xDFFF)
-  if (i === 0) {
-    throw 'Low surrogate without preceding high surrogate';
-  }
-  var prev = str.charCodeAt(i - 1);
-
-  // Можна замінити друге значення на 0xDB7F й тлумачити
-  // «старші половини приватного вжитку» як окремі символи.
-  if (0xD800 > prev || prev > 0xDBFF) {
-    throw 'Low surrogate without preceding high surrogate';
-  }
-
-  // Повернути натомість наступний символ й повернути збільшений зсув
-  return [str.charAt(i + 1), i + 1];
-}
-
- -

Також можна навести більш витончене рішення, хоча дещо менш гнучке:

- -
// Просто перебираємо символи рядка за допомогою forEachChar()
-forEachChar('A\uD87E\uDC04Z', function(c) {
-  console.log(c);
-});
-
-function forEachChar(string, predicate) {
-  for (var i = 0; i < string.length; i++) {
-    var code = string.charCodeAt(i);
-    var value;
-
-    // Звичайний символ, просто лишаємо як є.
-    if (code < 0xD800 || code > 0xDFFF) {
-      value = string.charAt(i);
-    } else {
-      // Старша половина (можна замінити друге значення на 0xDB7F й тлумачити
-      // «старші половини приватного вжитку» як окремі символи).
-      if (0xD800 <= code && code <= 0xDBFF) {
-        if (string.length <= (i + 1)) {
-          throw 'High surrogate without following low surrogate';
-        }
-
-        var next = string.charCodeAt(i + 1);
-        if (0xDC00 > next || next > 0xDFFF) {
-          throw 'High surrogate without following low surrogate';
-        }
-
-        value = string.charAt(i) + string.charAt(i + 1);
-        i++;
-      } else {
-        // Молодша половина (0xDC00 <= code && code <= 0xDFFF)
-        throw 'Low surrogate without preceding high surrogate';
-      }
-    }
-
-    // Перебір можна перервати, повернувши з функції-присудка значення false
-    if (false === predicate.call(string, value)) {
-      return;
-    }
-  }
-}
-
- -

Виправлений charAt() з урахуванням складених символів

- -

Приклад нижче наводить функцію fixedCharAt(), яка не лише злучає половинки складених символів, а ще й змінює індексацію символів таким чином, що index позначає порядковий номер (лік від нуля, як завжди) не кодової одиниці (як для звичайного charAt()), а саме повного символа.

- -

Втім, слід зважати, що це рішення є вкрай неоптимальним, якщо користувати його для перебору всього рядка:

- -
function fixedCharAt(string, index) {
-  var isExpectingLowSurrogate = false;
-  var charIndex = 0;
-  var i = 0;
-
-  // За межами рядка.
-  if (index < 0 || index >= string.length) {
-    return '';
-  }
-
-  while (i < string.length && charIndex < index) {
-    if (isHighSurrogateAt(string, i) && isLowSurrogateAt(string, i + 1)) {
-      i++;
-    }
-
-    i++;
-    charIndex++;
-  }
-
-  if (i < string.length) {
-    if (isHighSurrogateAt(string, i) && isLowSurrogateAt(string, i + 1)) {
-      return string.charAt(i) + string.charAt(i + 1);
-    } else {
-      return string.charAt(i);
-    }
-  }
-
-  return '';
-}
-
-function isHighSurrogateAt(string, index) {
-  var code = string.charCodeAt(index);
-  return 0xD800 <= code && code <= 0xDBFF;
-}
-
-function isLowSurrogateAt(string, index) {
-  var code = string.charCodeAt(index);
-  return 0xDC00 <= code && code <= 0xDFFF;
-}
-
- -

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

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
СпецифікаціяСтатусКоментар
{{SpecName('ES1')}}{{Spec2('ES1')}}Початкова виознака.
{{SpecName('ES5.1', '#sec-15.5.4.4', 'String.prototype.charAt')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.charat', 'String.prototype.charAt')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.charat', 'String.prototype.charAt')}}{{Spec2('ESDraft')}} 
- -

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/charcodeat/index.html b/files/uk/web/javascript/reference/global_objects/string/charcodeat/index.html deleted file mode 100644 index 3ed3a4c450..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/charcodeat/index.html +++ /dev/null @@ -1,161 +0,0 @@ ---- -title: String.prototype.charCodeAt() -slug: Web/JavaScript/Reference/Global_Objects/String/charCodeAt -tags: - - JavaScript - - String - - Unicode - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/charCodeAt ---- -
{{JSRef}}
- -

Метод charCodeAt() вертає ціле число в діапазоні між 0 та 65535, що відображає кодову одиницю UTF-16 за наданим індексом.

- -
{{EmbedInteractiveExample("pages/js/string-charcodeat.html", "shorter")}}
- - - -

Кодова одиниця UTF-16 співпадає з кодом символа Юнікоду для кодів символів, які можуть бути представлені єдиною кодовою одиницею UTF-16. Якщо код символа Юнікоду не може бути представлений єдиною кодовою одиницею UTF-16 (бо його значення більше за 0xFFFF), тоді повернена кодова одиниця буде першою частиною сурогатної пари для коду символа. Якщо вам потрібен весь код символа, використовуйте {{jsxref("Global_Objects/String/codePointAt", "codePointAt()")}}.

- -

Синтаксис

- -
str.charCodeAt(index)
- -

Параметри

- -
-
index
-
Ціле число, що більше або дорівнює 0 та менше за довжину рядка. Якщо index не є числом, він за замовчуванням прирівнюється до 0.
-
- -

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

- -

Число, що відображає значення кодової одиниці UTF-16 для символа за наданим індексом index. Якщо index знаходиться за межами діапазону, charCodeAt() повертає {{jsxref("Global_Objects/NaN", "NaN")}}.

- -

Опис

- -

Коди символів Юнікоду знаходяться в діапазоні від 0 до 1114111 (0x10FFFF). Перші 128 кодів символів Юнікоду повністю співпадають з кодуванням символів ASCII. (Інформацію щодо Юнікоду дивіться у Посібнику JavaScript.)

- -
-

Заувага: charCodeAt() завжди поверне значення, менше за 65536. Тому що більші коди символів відображаються парою (з меншим значенням) "сурогатних" псевдосимволів, що складають реальний символ.

- -

Тому, щоб дослідити (чи відтворити) повний символ для значень окремих символів від 65536 та більше, для таких символів необхідно отримувати не лише charCodeAt(i), але також charCodeAt(i+1) (ніби маніпулюючи рядком з двох літер), або використовувати замість цього codePointAt(i). Дивіться приклади 2 та 3 (нижче).

-
- -

charCodeAt() повертає {{jsxref("Global_Objects/NaN", "NaN")}}, якщо наданий індекс менший за 0, або якщо він дорівнює чи перевищує значення довжини рядка.

- -

Зворотня сумісність: У історичних версіях (наприклад, JavaScript 1.2) метод charCodeAt() вертає число, що вказує значення набору символів ISO-Latin-1 для символа за наданим індексом. Набір символів ISO-Latin-1 знаходиться в діапазоні від 0 до 255. Перші 0-127 повністю співпадають з набором символів ASCII.

- -

Приклади

- -

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

- -

Наступний приклад вертає 65, значення Юнікоду для A.

- -
'ABC'.charCodeAt(0)  // вертає 65
-
- -

Виправлення charCodeAt() для обробки символів не базової багатомовної площини, якщо їхня наявність раніше у рядку невідома

- -

Ця версія може використовуватись для циклів та подібного, коли невідомо, чи були присутні символи не з ББП до вказаної позиції.

- -
function fixedCharCodeAt(str, idx) {
-  // напр. fixedCharCodeAt('\uD800\uDC00', 0); // 65536
-  // напр. fixedCharCodeAt('\uD800\uDC00', 1); // false
-  idx = idx || 0;
-  var code = str.charCodeAt(idx);
-  var hi, low;
-
-  // Високий сурогат (може міняти останнє шістнадцяткове значення на 0xDB7F
-  // для обробки високих приватних сурогатів
-  // як єдиних символів)
-  if (0xD800 <= code && code <= 0xDBFF) {
-    hi = code;
-    low = str.charCodeAt(idx + 1);
-    if (isNaN(low)) {
-      throw 'Високий сурогат без наступного ' +
-        'низького сурогату у fixedCharCodeAt()';
-    }
-    return (
-      (hi - 0xD800) * 0x400) +
-      (low - 0xDC00) + 0x10000;
-  }
-  if (0xDC00 <= code && code <= 0xDFFF) { // Низький сурогат
-    // Ми вертаємо false, щоб дозволити циклам пропустити
-    // цю ітерацію, бо мали вже обробити
-    // високий сурогат вище у попередній ітерації
-    return false;
-    // hi = str.charCodeAt(idx - 1);
-    // low = code;
-    // return ((hi - 0xD800) * 0x400) +
-    //   (low - 0xDC00) + 0x10000;
-  }
-  return code;
-}
-
- -

Виправлення charCodeAt() для обробки символів не базової багатомовної площини, якщо їхня наявність раніше у рядку відома

- -
function knownCharCodeAt(str, idx) {
-  str += '';
-  var code,
-      end = str.length;
-
-  var surrogatePairs = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;
-  while ((surrogatePairs.exec(str)) != null) {
-    var li = surrogatePairs.lastIndex;
-    if (li - 2 < idx) {
-      idx++;
-    }
-    else {
-      break;
-    }
-  }
-
-  if (idx >= end || idx < 0) {
-    return NaN;
-  }
-
-  code = str.charCodeAt(idx);
-
-  var hi, low;
-  if (0xD800 <= code && code <= 0xDBFF) {
-    hi = code;
-    low = str.charCodeAt(idx + 1);
-    // Пройти на один далі, оскільки один з "символів"
-    // є частиною сурогатної пари
-    return ((hi - 0xD800) * 0x400) +
-      (low - 0xDC00) + 0x10000;
-  }
-  return code;
-}
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/codepointat/index.html b/files/uk/web/javascript/reference/global_objects/string/codepointat/index.html deleted file mode 100644 index 0a917f5885..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/codepointat/index.html +++ /dev/null @@ -1,142 +0,0 @@ ---- -title: String.prototype.codePointAt() -slug: Web/JavaScript/Reference/Global_Objects/String/codePointAt -tags: - - ECMAScript 2015 - - JavaScript - - String - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/codePointAt ---- -
{{JSRef}}
- -

Метод codePointAt() вертає невід'ємне ціле число, яке є значенням коду символу Юнікоду.

- -
{{EmbedInteractiveExample("pages/js/string-codepointat.html","shorter")}}
- - - -

Синтаксис

- -
str.codePointAt(pos)
- -

Параметри

- -
-
pos
-
Позиція елемента у str, код символа з якої треба повернути.
-
- -

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

- -

Число, що відображає значення коду символу з наданої позиції pos. Якщо на позиції pos немає елемента, вертається {{jsxref("undefined")}}.

- -

Опис

- -

Якщо на вказаній позиції немає елемента, повертається {{jsxref("undefined")}}. Якщо на позиції pos не починається сурогатна пара UTF-16, то повертається кодова одиниця позиції pos.

- -

Приклади

- -

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

- -
'ABC'.codePointAt(1)           // 66
-'\uD800\uDC00'.codePointAt(0)  // 65536
-
-'XYZ'.codePointAt(42)          // undefined
-
- -

Цикл з codePointAt()

- -
for (let codePoint of '\ud83d\udc0e\ud83d\udc71\u2764') {
-   console.log(codePoint.codePointAt(0).toString(16))
-}
-// '1f40e', '1f471', '2764' 
-
- -

Поліфіл

- -

Наступний код додає у рядки функцію codePointAt() згідно специфікації ECMAScript 2015 для переглядачів без вбудованої підтримки.

- -
/*! https://mths.be/codepointat v0.2.0 автор @mathias */
-if (!String.prototype.codePointAt) {
-  (function() {
-    'use strict'; // необхідно для підтримки `apply`/`call` з `undefined`/`null`
-    var defineProperty = (function() {
-     // IE 8 підтримує `Object.defineProperty` лише на DOM-елементах
-      try {
-        var object = {};
-        var $defineProperty = Object.defineProperty;
-        var result = $defineProperty(object, object, object) && $defineProperty;
-      } catch(error) {}
-      return result;
-    }());
-    var codePointAt = function(position) {
-      if (this == null) {
-        throw TypeError();
-      }
-      var string = String(this);
-      var size = string.length;
-      // `ToInteger`
-      var index = position ? Number(position) : 0;
-      if (index != index) { // краще `isNaN`
-        index = 0;
-      }
-      // Врахування індексів за межами існуючих значень:
-      if (index < 0 || index >= size) {
-        return undefined;
-      }
-      // Отримати першу кодову одиницю
-      var first = string.charCodeAt(index);
-      var second;
-      if ( // перевірити, чи вона є початком сурогатної пари
-        first >= 0xD800 && first <= 0xDBFF && // високий сурогат
-        size > index + 1 // існує наступна кодова одиниця
-      ) {
-        second = string.charCodeAt(index + 1);
-        if (second >= 0xDC00 && second <= 0xDFFF) { // низький сурогат
-          // https://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
-          return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;
-        }
-      }
-      return first;
-    };
-    if (defineProperty) {
-      defineProperty(String.prototype, 'codePointAt', {
-        'value': codePointAt,
-        'configurable': true,
-        'writable': true
-      });
-    } else {
-      String.prototype.codePointAt = codePointAt;
-    }
-  }());
-}
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/concat/index.html b/files/uk/web/javascript/reference/global_objects/string/concat/index.html deleted file mode 100644 index 861d951764..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/concat/index.html +++ /dev/null @@ -1,88 +0,0 @@ ---- -title: String.prototype.concat() -slug: Web/JavaScript/Reference/Global_Objects/String/concat -tags: - - JavaScript - - String - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/concat ---- -
{{JSRef}}
- -

Метод concat() об'єднує рядкові аргументи з рядком, що викликав метод, та повертає новий рядок.

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

Синтаксис

- -
str.concat(str2 [, ...strN])
- -

Параметри

- -
-
str2 [, ...strN]
-
Рядки, які треба об'єднати з str.
-
- -

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

- -

Новий рядок, що містить поєднаний текст з наданих рядків.

- -

Опис

- -

Функція concat() об'єднує рядкові аргументи з рядком, що викликав функцію, та повертає новий рядок. Зміни у початковому рядку чи у поверненому рядку не впливають один на одного.

- -

Якщо аргументи не належать до рядкового типу, вони перетворюються на рядкові значення перед об'єднанням.

- -

Швидкодія

- -

Наполегливо рекомендується використовувати {{jsxref("Operators/Assignment_Operators", "оператори присвоєння", "", 1)}} (++=) замість методу concat().

- -

Приклади

- -

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

- -

Наступний приклад об'єднує рядки у новий рядок.

- -
let hello = 'Привіт, '
-console.log(hello.concat('Кевіне', '. Гарного дня.'))
-// Привіт, Кевіне. Гарного дня.
-
-let greetList = ['Привіт', ' ', 'Віка', '!']
-"".concat(...greetList)  // "Привіт, Віка!"
-
-"".concat({})    // [object Object]
-"".concat([])    // ""
-"".concat(null)  // "null"
-"".concat(true)  // "true"
-"".concat(4, 5)  // "45"
-
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/endswith/index.html b/files/uk/web/javascript/reference/global_objects/string/endswith/index.html deleted file mode 100644 index e387abf56c..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/endswith/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -title: String.prototype.endsWith() -slug: Web/JavaScript/Reference/Global_Objects/String/endsWith -tags: - - JavaScript - - String - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/endsWith ---- -
{{JSRef}}
- -

Метод endsWith() визначає, чи завершується рядок символами вказаного рядка, повертаючи, відповідно, true чи false.

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

Синтаксис

- -
str.endsWith(searchString[, length])
- -

Параметри

- -
-
searchString
-
Символи, які шукатимуться в кінці рядка str.
-
length {{optional_inline}}
-
Якщо наданий, використовується як довжина str. За замовчуванням дорівнює str.length.
-
- -

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

- -

true, якщо надані символи знайдені в кінці рядка; інакше, false.

- -

Опис

- -

Цей метод дозволяє визначити, чи завершується рядок іншим рядком. Цей метод чутливий до регістру.

- -

Приклади

- -

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

- -
let str = 'Питання в тому: бути чи не бути.'
-
-console.log(str.endsWith('бути.'))  // true
-console.log(str.endsWith('Питання'))      // false
-console.log(str.endsWith('Питання', 7))  // true
-
- -

Поліфіл

- -

Цей метод був доданий до специфікації ECMAScript 6 та може поки не бути доступним в усіх реалізаціях JavaScript. Однак, ви можете створити поліфіл String.prototype.endsWith() за допомогою наступного коду:

- -
if (!String.prototype.endsWith) {
-	String.prototype.endsWith = function(search, this_len) {
-		if (this_len === undefined || this_len > this.length) {
-			this_len = this.length;
-		}
-		return this.substring(this_len - search.length, this_len) === search;
-	};
-}
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/fixed/index.html b/files/uk/web/javascript/reference/global_objects/string/fixed/index.html deleted file mode 100644 index c13fbaa65f..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/fixed/index.html +++ /dev/null @@ -1,62 +0,0 @@ ---- -title: String.prototype.fixed() -slug: Web/JavaScript/Reference/Global_Objects/String/fixed -tags: - - JavaScript - - String - - метод - - не рекомендований -translation_of: Web/JavaScript/Reference/Global_Objects/String/fixed ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод fixed() створює HTML-елемент <tt>, який відображає рядок моноширинним шрифтом.

- -

Синтаксис

- -
str.fixed()
- -

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

- -

Рядок, що відображає HTML-елемент <tt>.

- -

Опис

- -

Метод fixed() вбудовує рядок у тег <tt>: "<tt>str</tt>".

- -

Приклади

- -

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

- -

Наступний приклад використовує метод fixed, щоб змінити форматування рядка:

- -
var worldString = 'Привіт';
-console.log(worldString.fixed()); // "<tt>Привіт</tt>"
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/fontcolor/index.html b/files/uk/web/javascript/reference/global_objects/string/fontcolor/index.html deleted file mode 100644 index 5e1a68492b..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/fontcolor/index.html +++ /dev/null @@ -1,81 +0,0 @@ ---- -title: String.prototype.fontcolor() -slug: Web/JavaScript/Reference/Global_Objects/String/fontcolor -tags: - - JavaScript - - String - - метод - - не рекомендований -translation_of: Web/JavaScript/Reference/Global_Objects/String/fontcolor ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод fontcolor() створює HTML-елемент <font>, який відображає рядок вказаним кольором.

- -
-

Примітка щодо використання: Елемент <font> був прибраний у HTML5 та більше не повинен використовуватись. Замість нього веб-розробникам варто використовувати властивості CSS.

-
- -

Синтаксис

- -
str.fontcolor(color)
- -

Параметри

- -
-
color
-
Рядок, що відображає колір у вигляді шістнадцяткової RGB-трійці або рядкового літералу. Рядкові літерали для імен кольорів перераховані у Довіднику кольорів CSS.
-
- -

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

- -

Рядок, що містить HTML-елемент <font>.

- -

Опис

- -

Якщо ви виражаєте колір шістнадцятковою RGB-трійцею, ви повинні використовувати формат rrggbb. Наприклад, шістнадцяткові RGB-значення для оранжево-рожевого (salmon) такі: red=FA, green=80 та blue=72, отже, RGB-трійця для оранжево-рожевого дорівнює "FA8072".

- -

Приклади

- -

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

- -

Наступний приклад використовує метод fontcolor(), щоб змінити колір рядка, створюючи рядок з HTML-тегом <font>.

- -
var worldString = 'Привіт';
-
-console.log(worldString.fontcolor('red') +  ' червоний у цьому рядку');
-// '<font color="red">Привіт</font> червоний у цьому рядку'
-
-console.log(worldString.fontcolor('FF00') + ' червоний у шістнадцятковому форматі у цьому рядку');
-// '<font color="FF00">Привіт</font> червоний у шістнадцятковому форматі у цьому рядку'
-
- -

За допомогою об'єкта element.style ви можете отримати атрибут елемента style та маніпулювати ним в більш загальному стилі, наприклад:

- -
document.getElementById('yourElemId').style.color = 'red';
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/fontsize/index.html b/files/uk/web/javascript/reference/global_objects/string/fontsize/index.html deleted file mode 100644 index c7cc26f07e..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/fontsize/index.html +++ /dev/null @@ -1,80 +0,0 @@ ---- -title: String.prototype.fontsize() -slug: Web/JavaScript/Reference/Global_Objects/String/fontsize -tags: - - JavaScript - - String - - метод - - не рекомендований -translation_of: Web/JavaScript/Reference/Global_Objects/String/fontsize ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод fontsize() створює HTML-елемент <font>, який відображає рядок вказаним розміром шрифта.

- -
-

Примітка щодо використання: Елемент <font> був прибраний у HTML5 та більше не повинен використовуватись. Замість нього веб-розробникам варто використовувати властивості CSS.

-
- -

Синтаксис

- -
str.fontsize(size)
- -

Параметри

- -
-
size
-
Ціле число в діапазоні між 1 та 7; рядок, що відображає ціле число зі знаком в діапазоні між 1 та 7.
-
- -

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

- -

Рядок, що містить HTML-елемент <font>.

- -

Опис

- -

Коли ви вказуєте розмір як ціле число, ви встановлюєте розмір шрифта str одним з 7 визначених розмірів. Коли ви вказуєте значення size у вигляді рядка, наприклад, "-2", ви коригуєте розмір шрифта str відносно розміру, встановленого у тезі <basefont>.

- -

Приклади

- -

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

- -

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

- -
var worldString = 'Привіт';
-
-console.log(worldString.small());     // <small>Привіт</small>
-console.log(worldString.big());       // <big>Привіт</big>
-console.log(worldString.fontsize(7)); // <font size="7">Привіт</fontsize>
-
- -

За допомогою об'єкта element.style ви можете отримати атрибут елемента style та маніпулювати ним у більш загальному стилі, наприклад:

- -
document.getElementById('yourElemId').style.fontSize = '0.7em';
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/fromcharcode/index.html b/files/uk/web/javascript/reference/global_objects/string/fromcharcode/index.html deleted file mode 100644 index be8f695a24..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/fromcharcode/index.html +++ /dev/null @@ -1,109 +0,0 @@ ---- -title: String.fromCharCode() -slug: Web/JavaScript/Reference/Global_Objects/String/fromCharCode -tags: - - JavaScript - - Method - - String - - Unicode - - Довідка -translation_of: Web/JavaScript/Reference/Global_Objects/String/fromCharCode ---- -
{{JSRef}}
- -

Статичний метод String.fromCharCode() повертає рядок, створений з послідовності кодових одиниць Unicode переданих цілими числами.

- -

Синтаксис

- -
String.fromCharCode(num1[, ...[, numN]])
- -

Параметри

- -
-
num1, ..., numN
-
Послідовність цілих чисел, кожне з яких подає окрему кодову одиницю Unicode.
-
- -

Вертає

- -

Рядок із символів, що відповідають переданій послідовності значень (кодових одиниць) Unicode.

- -

Опис

- -

Цей метод вертає власне рядок, що належить до {{glossary("Primitive", "простого типу даних")}}, а не об'єкт класу {{jsxref("String")}}.

- -

Позаяк fromCharCode() є статичним методом класу {{jsxref("String")}}, він зазвичай використовується як String.fromCharCode(), а не як метод створеного об'єкта класу.

- -

Приклади

- -

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

- -

Наведений вираз повертає рядок "Віко":

- -
// вертає "Віко"
-String.fromCharCode(0x412, 0x456, 0x43A, 0x43E);
- -

Обробка значень понад 0xFFFF

- -

Попри свою назву, метод фактично приймає не коди символів, а саме кодові одиниці. Тобто символи, коди яких перевищують значення 0xFFFF (діапазон UCS-2), доведеться передавати двома кодовими одиницями:

- -

Наприклад, символ з кодом U+1F341 «MAPLE LEAF» доведеться подавати як послідовність кодових одиниць 0xD83C та 0xDF41:

- -
// виводить символ U+1F341 «MAPLE LEAF»
-console.log(String.fromCharCode(0xD83C, 0xDF41));
- -

Більшість символів Unicode можна передати значеннями одного 16-розрядного числа (як передбачалося на початку стандартизації JavaScript), тож fromCharCode() можна застосовувати для створення рядків із найпоширенішими символами (UCS-2 є підмножиною UTF-8, що містить найбільш вживані символи), проте для потреб передачі всіх можливих символів (кодуються 21 двійковим розрядом) лише методу fromCharCode() недостатньо. Позаяк символи з кодами вищими за 0xFFFF подаються так званими «сурогатними парами» (двома окремими кодовими одиницями), можна використати {{jsxref("String.fromCodePoint()")}} (є частиною стандарту ES2015), що належним чином перетворить вищі коди символів на такі пари:

- -
// виводить true
-console.log(String.fromCharCode(0xD83C, 0xDF41) === String.fromCodePoint(0x1F341));
- -

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

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
СпецифікаціяСтатусКоментар
{{SpecName('ES1')}}{{Spec2('ES1')}}Первинне визначення. Реалізовано у JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.5.3.2', 'StringfromCharCode')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.fromcharcodes', 'String.fromCharCode')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.fromcharcodes', 'String.fromCharCode')}}{{Spec2('ESDraft')}} 
- -

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/fromcodepoint/index.html b/files/uk/web/javascript/reference/global_objects/string/fromcodepoint/index.html deleted file mode 100644 index 2825480bfd..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/fromcodepoint/index.html +++ /dev/null @@ -1,171 +0,0 @@ ---- -title: String.fromCodePoint() -slug: Web/JavaScript/Reference/Global_Objects/String/fromCodePoint -tags: - - ECMAScript 2015 - - JavaScript - - Method - - String - - Довідка -translation_of: Web/JavaScript/Reference/Global_Objects/String/fromCodePoint ---- -
{{JSRef}}
- -

Статичний метод String.fromCodePoint() повертає рядок, створений з послідовності кодів символів Unicode переданих цілими числами.

- -

Синтаксис

- -
String.fromCodePoint(num1[, ...[, numN]])
- -

Параметри

- -
-
num1, ..., numN
-
Послідовність цілих чисел, кожне з яких передає код символа Unicode.
-
- -

Вертає

- -

Рядок із символів, що відповідають переданій послідовності кодів символів Unicode.

- -

Винятки

- - - -

Опис

- -

Цей метод вертає власне рядок, що належить до {{glossary("Primitive", "простого типу даних")}}, а не об'єкт класу {{jsxref("String")}}.

- -

Позаяк fromCodePoint() є статичним методом класу {{jsxref("String")}}, він зазвичай використовується як String.fromCodePoint(), а не як метод створеного об'єкта класу.

- -

Приклади

- -

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

- -
String.fromCodePoint(42);                    // "*"
-String.fromCodePoint(65, 90);                // "AZ"
-String.fromCodePoint(0x404, 0x490);          // "ЄҐ"
-String.fromCodePoint(0x2F804);               // "\uD87E\uDC04"
-String.fromCodePoint(194564);                // "\uD87E\uDC04"
-String.fromCodePoint(0x1D306, 0x61, 0x1D307) // "\uD834\uDF06a\uD834\uDF07"
-
-String.fromCodePoint('_');       // викидає RangeError
-String.fromCodePoint(Infinity);  // викидає RangeError
-String.fromCodePoint(-1);        // викидає RangeError
-String.fromCodePoint(3.14);      // викидає RangeError
-String.fromCodePoint(3e-2);      // викидає RangeError
-String.fromCodePoint(NaN);       // викидає RangeError
-
- -
// Метод String.fromCharCode() не може створювати символи з такими великими кодами
-// Натомість fromCodePoint() може створювати символи, що передаються двома кодовими одиницями (чотири байти),
-// так само, як і звичайні двобайтні (тобто може створити рядок, що містить один символ, але має довжину 2 замість 1).
-console.log(String.fromCodePoint(0x2F804));  // Значення 194564 в десятковій системі числення
-
- -

Запасний варіант (поліфіл)

- -

Цей метод з'явився в ECMAScript 2015, тож, можливо, наявний не у всякій реалізації JavaScript. Проте, ви можете використати наступний код для забезпечення запасного варіанту:

- -
/*! http://mths.be/fromcodepoint v0.1.0 by @mathias */
-if (!String.fromCodePoint) {
-  (function() {
-    var defineProperty = (function() {
-      // IE 8 only supports `Object.defineProperty` on DOM elements
-      try {
-        var object = {};
-        var $defineProperty = Object.defineProperty;
-        var result = $defineProperty(object, object, object) && $defineProperty;
-      } catch(error) {}
-      return result;
-    }());
-    var stringFromCharCode = String.fromCharCode;
-    var floor = Math.floor;
-    var fromCodePoint = function() {
-      var MAX_SIZE = 0x4000;
-      var codeUnits = [];
-      var highSurrogate;
-      var lowSurrogate;
-      var index = -1;
-      var length = arguments.length;
-      if (!length) {
-        return '';
-      }
-      var result = '';
-      while (++index < length) {
-        var codePoint = Number(arguments[index]);
-        if (
-          !isFinite(codePoint) ||       // `NaN`, `+Infinity`, or `-Infinity`
-          codePoint < 0 ||              // not a valid Unicode code point
-          codePoint > 0x10FFFF ||       // not a valid Unicode code point
-          floor(codePoint) != codePoint // not an integer
-        ) {
-          throw RangeError('Invalid code point: ' + codePoint);
-        }
-        if (codePoint <= 0xFFFF) { // BMP code point
-          codeUnits.push(codePoint);
-        } else { // Astral code point; split in surrogate halves
-          // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
-          codePoint -= 0x10000;
-          highSurrogate = (codePoint >> 10) + 0xD800;
-          lowSurrogate = (codePoint % 0x400) + 0xDC00;
-          codeUnits.push(highSurrogate, lowSurrogate);
-        }
-        if (index + 1 == length || codeUnits.length > MAX_SIZE) {
-          result += stringFromCharCode.apply(null, codeUnits);
-          codeUnits.length = 0;
-        }
-      }
-      return result;
-    };
-    if (defineProperty) {
-      defineProperty(String, 'fromCodePoint', {
-        'value': fromCodePoint,
-        'configurable': true,
-        'writable': true
-      });
-    } else {
-      String.fromCodePoint = fromCodePoint;
-    }
-  }());
-}
-
- -

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

- - - - - - - - - - - - - - - - - - - -
СпецифікаціяСтатусКоментар
{{SpecName('ES2015', '#sec-string.fromcodepoint', 'String.fromCodePoint')}}{{Spec2('ES2015')}}Первинне визначення.
{{SpecName('ESDraft', '#sec-string.fromcodepoint', 'String.fromCodePoint')}}{{Spec2('ESDraft')}} 
- -

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/includes/index.html b/files/uk/web/javascript/reference/global_objects/string/includes/index.html deleted file mode 100644 index bcfb01d5aa..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/includes/index.html +++ /dev/null @@ -1,125 +0,0 @@ ---- -title: String.prototype.includes() -slug: Web/JavaScript/Reference/Global_Objects/String/includes -tags: - - JavaScript - - Method - - Prototype - - Reference - - String - - Довідка - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/includes ---- -
{{JSRef}}
- -

Метод includes() визначає чи може один рядок бути знайденим всередині іншого, повертаючи, відповідно, true або false.

- -

{{EmbedInteractiveExample("pages/js/string-includes.html", "shorter")}}

- - - -

Синтаксис

- -
str.includes(searchString[, position])
- -

Параметри

- -
-
searchString
-
Рядок для пошуку всередині str.
-
position {{optional_inline}}
-
Позиція всередині рядка, з якої буде почато пошук рядка searchString. (За замовчуванням 0).
-
- -

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

- -

true, якщо шуканий рядок знайдено де-завгодно всередині наданого рядка; інакше, false.

- -

Опис

- -

Цей метод дозволяє визначити чи знаходиться один рядок всередині іншого.

- -

Чутливість до регістру

- -

Метод includes() є чутливим до регістру. Для прикладу, наступний вираз поверне false:

- -
'Синій кит'.includes('синій'); // вертає false
-
- -

Приклади

- -

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

- -
var str = 'Питання в тому: бути чи не бути.';
-
-console.log(str.includes('Питання'));     // true
-console.log(str.includes('бути'));        // true
-console.log(str.includes('неіснуючий'));  // false
-console.log(str.includes('Питання', 1));  // false
-console.log(str.includes('ПИТАННЯ'));     // false
-console.log(str.includes(''));            // true
- -

Поліфіл

- -

Цей метод був доданий до специфікації ECMAScript 2015 і може бути недоступним у всіх реалізаціях JavaScript.

- -

Однак, ви можете легко розробити поліфіл для цього методу:

- -
if (!String.prototype.includes) {
-  String.prototype.includes = function(search, start) {
-    'use strict';
-
-    if (search instanceof RegExp) {
-      throw TypeError('first argument must not be a RegExp');
-    }
-    if (start === undefined) { start = 0; }
-    return this.indexOf(search, start) !== -1;
-  };
-}
- -

- -

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

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

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

- - - -

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

- -

String.prototype.contains

- -

У Firefox 18-39 назва цього методу була contains(). Він був перейменований на includes() у bug 1102219 у зв'язку з наступною причиною:

- -

Повідомлялося, що деякі веб-сайти, які використовують MooTools 1.2 не працюють на Firefox 17. Ця версія MooTools перевіряла чи існує метод String.prototype.contains() та, якщо ні, то MooTools додає власну функцію.

- -

З введенням цієї функції у Firefox 17, поведінка цієї перевірки змінювалася таким чином, що ставала причиною непрацездатності коду на основі реалізації методу String.prototype.contains() від MooTools. В результаті реалізація була відключена у Firefox 17, а String.prototype.contains() був доступний на одну версію пізніше, у Firefox 18, коли налагодження зв'язків з MooTools призвело до випуску MooTools версії 1.2.6.

- -

MooTools 1.3 примусово запускає власну версію методу String.prototype.contains(), тож, веб-сайти, що покладаються на неї, не повинні ламатися. Однак, зауважте, що сигнатура цього методу відразняється для MooTools 1.3 і ECMAScript 2015 (на місці другого аргумента). Пізніше, MooTools 1.5+ змінив сігнатуру у відповідності до стандарту ES2015.

- -

У Firefox 48 метод String.prototype.contains() було видалено. Використовуйте тільки String.prototype.includes().

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/index.html b/files/uk/web/javascript/reference/global_objects/string/index.html deleted file mode 100644 index f28c4fb043..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/index.html +++ /dev/null @@ -1,374 +0,0 @@ ---- -title: String -slug: Web/JavaScript/Reference/Global_Objects/String -tags: - - ECMAScript 2015 - - JavaScript - - String - - Довідка - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String ---- -
{{JSRef}}
- -

Глобальний об'єкт String є конструктором для рядків, або послідовностей символів.

- -

Опис

- -

Рядки корисні для утримання данних, які можуть бути представлені в текстовій формі. Деякі з найбільш виконуваних операцій над рядками: перевірка їхньої {{jsxref("String.length", "довжини")}}, побудова та об'єднання рядків за допомогою рядкових операторів + та +=, перевірка наявності чи розташування підрядків методом {{jsxref("String.prototype.indexOf()", "indexOf()")}} чи копіювання підрядків методом {{jsxref("String.prototype.substring()", "substring()")}}.

- -

Створення рядків

- -

Рядки можна створювати як примітиви, з рядкових літералів, або як об'єкти, використовуючи конструктор {{jsxref("String/String")}}:

- -
const string1 = "Рядковий примітив";
-const string2 = 'Теж рядковий примітив';
-const string3 = `І ще один рядковий примітив`;
-
-const string4 = new String("Об'єкт String");
- -

Рядкові примітиви та рядкові об'єкти можна взаємно замінювати у більшості ситуацій. Дивіться нижче "Рядкові примітиви та рядкові об'єкти".

- -

Рядкові літерали можуть створюватись з використанням одинарних чи подвійних лапок, які працюють ідентично, або за допомогою зворотніх лапок `. Ця остання форма створює шаблонний літерал: ця форма дозволяє інтерполювати вирази.

- -

Доступ до символів

- -

Існують два способи доступу до окремих символів рядка. Перший - це метод {{jsxref("String.prototype.charAt()", "charAt()")}}:

- -
return 'кіт'.charAt(1); // вертає "і"
-
- -

Другий спосіб (запроваджений у ECMAScript 5) працює з рядком як з подібним до масиву об'єктом, де окремі символи відповідають числовому індексу:

- -
return 'кіт'[1]; // вертає "і"
-
- -

Під час звернення до символу за допомогою дужкової нотації спроби видалити ці властивості чи присвоїти їм значення не матимуть успіху. Ці властивості не є доступними ані для запису, ані для налаштування. (Дивіться більше інформації у {{jsxref("Object.defineProperty()")}}.)

- -

Порівняння рядків

- -

У мові C для порівняння рядків використовується функція strcmp(). У JavaScript ви просто використовуєте оператори менше ніж та більше ніж:

- -
var a = 'а';
-var b = 'б';
-if (a < b) { // true
-  console.log(a + ' менше ніж ' + b);
-} else if (a > b) {
-  console.log(a + ' більше ніж ' + b);
-} else {
-  console.log(a + ' та ' + b + ' є рівними.');
-}
-
- -

Схожий результат можна отримати за допомогою методу {{jsxref("String.prototype.localeCompare()", "localeCompare()")}}, що успадковується екземплярами String.

- -

Зауважте, що a == b перевіряє рядки у a та b на рівність у звичайний чутливий до регістру спосіб. Якщо вам потрібно порівняння літер без врахування регістру, використовуйте функцію, схожу на цю:

- -
function isEqual(str1, str2)
-{
-    return str1.toUpperCase() === str2.toUpperCase()
-} // isEqual
- -

Верхній регістр використовується замість нижнього в цій функції через деякі проблеми з перетвореннями символів у UTF-8.

- -

Рядкові примітиви та рядкові об'єкти

- -

Зауважте, що JavaScript розрізняє об'єкти String та примітивні рядкові значення. (Те саме стосується типу {{jsxref("Boolean")}} та {{jsxref("Global_Objects/Число", "чисел")}}.)

- -

Рядкові літерали (позначаються подвійними чи одинарними лапками) та рядки, повернені викликами String не в контексті конструктора (тобто, без використання ключового слова {{jsxref("Operators/new", "new")}}) є примітивними рядками. JavaScript автоматично перетворює примітиви на об'єкти String, тому методи об'єкта String можливо використовувати на примітивних рядках. Там, де на примітивному рядку має бути викликаний метод або зустрічається звернення до властивості, JavaScript автоматично загорне рядковий примітив та викличе метод чи виконає звернення до властивості.

- -
var s_prim = 'няв';
-var s_obj = new String(s_prim);
-
-console.log(typeof s_prim); // Виведе "string"
-console.log(typeof s_obj);  // Виведе "object"
-
- -

Рядкові примітиви та об'єкти String також дають різні результати при використанні {{jsxref("Global_Objects/eval", "eval()")}}. Примітиви, передані у eval, сприймаються як першокод; об'єкти String поводяться як усі об'єкти, повертаючи об'єкт. Наприклад:

- -
var s1 = '2 + 2';             // створює рядковий примітив
-var s2 = new String('2 + 2'); // створює об'єкт String
-console.log(eval(s1));        // повертає число 4
-console.log(eval(s2));        // повертає рядок "2 + 2"
-
- -

Через це може статись помилка, якщо код зустрічає об'єкт String там, де очікує рядковий примітив, хоча, загалом, розробникам не потрібно хвилюватись щодо відмінностей.

- -

Об'єкт String завжди можна перетворити на його примітивний аналог методом {{jsxref("String.prototype.valueOf()", "valueOf()")}}.

- -
console.log(eval(s2.valueOf())); // вертає число 4
-
- -

Екранування

- -

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

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
КодРезультат
\XXX
- (де XXX - це 1–3 вісімкових цифр; діапазон 0377)
Символ ISO-8859-1 / код символа Юнікоду між U+0000 та U+00FF
\'одинарні лапки
\"подвійні лапки
\\зворотній слеш
\nновий рядок
\rповернення каретки
\vвертикальна табуляція
\tгоризонтальна табуляція
\bповернення на крок
\fзміна сторінки
\uXXXX (де XXXX - це 4 шістнадцяткових символа; діапазон 0x00000xFFFF)Кодова одиниця UTF-16 / код символа Юнікоду між U+0000 та U+FFFF
\u{X} ... \u{XXXXXX}
- (де XXXXXXX - це 1–6 шістнадцяткових символів; діапазон 0x00x10FFFF)
Кодова одиниця UTF-32 / код символа Юнікоду між U+0000 та U+10FFFF
\xXX
- (де XX - це 2 шістнадцяткові символи; діапазон 0x000xFF)
символ ISO-8859-1 / код символа Юнікоду між U+0000 та U+00FF
- -

Довгі рядкові літерали

- -

Іноді ваш код міститиме рядки, які є дуже довгими. Замість того, щоб створювати рядки нескінченно довгі чи перенесені за примхою редактора, ви можете самостійно розбити текст на декілька рядків у коді, не вплинувши на реальний вміст літералу. Існує два способи це зробити.

- -

Метод 1

- -

Ви можете скористатись оператором + для поєднання багатьох рядків, ось так:

- -
let longString = "Це дуже довгий текст, його треба " +
-                 "записати в декілька рядків," +
-                 "інакше мій код буде важко читати."
- -

Метод 2

- -

Ви можете скористатись символом зворотній слеш (\) в кінці кожного рядка, щоб позначити, що текст продовжується на наступному рядку. Переконайтесь, що після зворотнього слеша немає пробілу чи будь-якого іншого символу (окрім символу розриву рядка), або відступу; інакше, це не спрацює.

- -

Ця форма виглядає ось так:

- -
let longString = "Це дуже довгий текст, його треба \
-записати в декілька рядків, \
-інакше мій код буде важко читати."
- -

Обидва наведені методи виводять ідентичні рядки.

- -

Конструктор

- -
-
{{jsxref("String/String", "String()")}}
-
Створює новий об'єкт String. Він виконує перетворення типів, коли викликається як функція, а не як конструктор, що, зазвичай, більш корисно.
-
- -

Статичні методи

- -
-
{{jsxref("String.fromCharCode()", "String.fromCharCode(num1 [, ...[, numN]])")}}
-
Вертає рядок, створений за допомогою вказаної послідовності значень Юнікоду.
-
{{jsxref("String.fromCodePoint()", "String.fromCodePoint(num1 [, ...[, numN)")}}
-
Вертає рядок, створений за допомогою вказаної послідовності кодів символів.
-
{{jsxref("String.raw()")}}
-
Вертає рядок, створений з сирого шаблонного рядка.
-
- -

Властивості екземплярів

- -
-
{{jsxref("String.prototype.length")}}
-
Відображає довжину рядка. Доступна лише для читання.
-
- -

Методи екземплярів

- -
-
{{jsxref("String.prototype.charAt()", "String.prototype.charAt(index)")}}
-
Вертає символ (рівно одну кодову одиницю UTF-16), розташований за вказаним індексом index.
-
{{jsxref("String.prototype.charCodeAt()", "String.prototype.charCodeAt(index)")}}
-
Вертає число, яке є значенням кодової одиниці UTF-16, розташованої за вказаним індексом index.
-
{{jsxref("String.prototype.codePointAt()", "String.prototype.codePointAt(pos)")}}
-
Вертає невід'ємне ціле число, яке є значенням коду символу UTF-16, що починається на вказаній позиції pos.
-
{{jsxref("String.prototype.concat()", "String.prototype.concat(str [, ...strN ])")}}
-
Об'єднує текст двох (або більше) рядків та повертає новий рядок.
-
{{jsxref("String.prototype.includes()", "String.prototype.includes(searchString [, position])")}}
-
Визначає, чи містить рядок, що викликав метод, рядок searchString.
-
{{jsxref("String.prototype.endsWith()", "String.prototype.endsWith(searchString [, length])")}}
-
Визначає, чи завершується рядок символами рядка searchString.
-
{{jsxref("String.prototype.indexOf()", "String.prototype.indexOf(searchValue [, fromIndex])")}}
-
Вертає індекс всередині об'єкта {{jsxref("String")}}, що викликав метод, першого знайденого значення searchValue, або -1, якщо воно не знайдене.
-
{{jsxref("String.prototype.lastIndexOf()", "String.prototype.lastIndexOf(searchValue [, fromIndex])")}}
-
Вертає індекс всередині об'єкта {{jsxref("String")}}, що викликав метод, останнього знайденого значення searchValue, або -1, якщо значення не знайдене.
-
{{jsxref("String.prototype.localeCompare()", "String.prototype.localeCompare(compareString [, locales [, options]])")}}
-
Вертає число, що вказує, чи розташований рядок compareString перед, після, чи однаково, відносно наданого рядка у відсованій послідовності.
-
{{jsxref("String.prototype.match()", "String.prototype.match(regexp)")}}
-
Використовується, щоб зіставити регулярний вираз regexp з рядком.
-
{{jsxref("String.prototype.matchAll()", "String.prototype.matchAll(regexp)")}}
-
Вертає ітератор усіх збігів з регулярним виразом.
-
{{jsxref("String.prototype.normalize()", "String.prototype.normalize([form])")}}
-
Вертає рядкове значення, на якому викликано метод, у формі нормалізації Юнікоду.
-
{{jsxref("String.prototype.padEnd()", "String.prototype.padEnd(targetLength [, padString])")}}
-
Доповнює поточний рядок наданим рядком з кінця та повертає новий рядок, що має довжину targetLength.
-
{{jsxref("String.prototype.padStart()", "String.prototype.padStart(targetLength [, padString])")}}
-
Доповнює поточний рядок наданим рядком з початку та повертає новий рядок, що має довжину targetLength.
-
{{jsxref("String.prototype.repeat()", "String.prototype.repeat(count)")}}
-
Повертає рядок, що складається з елементів об'єкта, повторених count разів.
-
{{jsxref("String.prototype.replace()" , "String.prototype.replace(searchForreplaceWith)")}}
-
Використовується, щоб замінити searchFor заміною replaceWith. searchFor може бути рядком або регулярним виразом, а replaceWith може бути рядком чи функцією.
-
{{jsxref("String.prototype.replaceAll()" , "String.prototype.replaceAll(searchForreplaceWith)")}}
-
Використовується, щоб замінити усі збіги з шаблоном searchFor заміною replaceWithsearchFor може бути рядком або регулярним виразом, а replaceWith може бути рядком або функцією.
-
{{jsxref("String.prototype.search()", "String.prototype.search(regexp)")}}
-
Шукає збіг між регулярним виразом regexp та рядком, що викликав метод.
-
{{jsxref("String.prototype.slice()", "String.prototype.slice(beginIndex[, endIndex])")}}
-
Вирізає частину рядка та повертає новий рядок.
-
{{jsxref("String.prototype.split()", "String.prototype.split([sep [, limit] ])")}}
-
Вертає масив рядків, заповнених розділенням початкового рядка підрядком sep.
-
{{jsxref("String.prototype.startsWith()", "String.prototype.startsWith(searchString [, length])")}}
-
Визначає, чи починається рядок з символів рядка searchString.
-
{{jsxref("String.prototype.substr()")}}
-
Повертає вказану кільксть символів на початку рядка з вказаної позиції.
-
{{jsxref("String.prototype.substring()", "String.prototype.substring(indexStart [, indexEnd])")}}
-
Повертає рядок, що містить символи рядка від вказаного індекса, або між вказаними індексами.
-
{{jsxref("String.prototype.toLocaleLowerCase()", "String.prototype.toLocaleLowerCase( [locale, ...locales])")}}
-
-

Символи рядка переводяться до нижнього регістра відповідно до поточних регіональних налаштувань.

- -

Для більшості мов результат буде такий самий, як у {{jsxref("String.prototype.toLowerCase()", "toLowerCase()")}}.

-
-
{{jsxref("String.prototype.toLocaleUpperCase()", "String.prototype.toLocaleUpperCase( [locale, ...locales])")}}
-
-

Символи рядка переводяться до верхнього регістра відповідно до поточних регіональних налаштувань.

- -

Для більшості мов результат буде такий самий, як у {{jsxref("String.prototype.toUpperCase()", "toUpperCase()")}}.

-
-
{{jsxref("String.prototype.toLowerCase()")}}
-
Повертає значення рядка, переведене до нижнього регістра.
-
{{jsxref("String.prototype.toString()")}}
-
Повертає рядкове представлення вказаного об'єкта. Заміщує метод {{jsxref("Object.prototype.toString()")}}.
-
{{jsxref("String.prototype.toUpperCase()")}}
-
Повертає значення рядка, переведене до верхнього регістра.
-
{{jsxref("String.prototype.trim()")}}
-
Прибирає пробіли з початку та кінця рядка. Частина стандарту ECMAScript 5.
-
{{jsxref("String.prototype.trimStart()")}}
-
Видаляє пробіли з початку рядка.
-
{{jsxref("String.prototype.trimEnd()")}}
-
Видаляє пробіли з кінця рядка.
-
{{jsxref("String.prototype.valueOf()")}}
-
Повертає просту величину вказаного об'єкта. Заміщує метод {{jsxref("Object.prototype.valueOf()")}}.
-
{{jsxref("String.prototype.@@iterator()")}}
-
Повертає новий об'єкт Iterator, який перебирає коди символів рядка, повертаючи кожний код символа рядкового значення.
-
- -

Методи HTML-обгортки

- -

Застарілі. Уникайте цих методів.

- -

Вони обмежено використовуються, оскільки надають набір доступних тегів та атрибутів HTML.

- -
-
{{jsxref("String.prototype.anchor()")}}
-
{{htmlattrxref("name", "a", "<a name=\"name\">")}} (гіпертекстове посилання)
-
{{jsxref("String.prototype.big()")}}
-
{{HTMLElement("big")}}
-
{{jsxref("String.prototype.blink()")}}
-
{{HTMLElement("blink")}}
-
{{jsxref("String.prototype.bold()")}}
-
{{HTMLElement("b")}}
-
{{jsxref("String.prototype.fixed()")}}
-
{{HTMLElement("tt")}}
-
{{jsxref("String.prototype.fontcolor()")}}
-
{{htmlattrxref("color", "font", "<font color=\"color\">")}}
-
{{jsxref("String.prototype.fontsize()")}}
-
{{htmlattrxref("size", "font", "<font size=\"size\">")}}
-
{{jsxref("String.prototype.italics()")}}
-
{{HTMLElement("i")}}
-
{{jsxref("String.prototype.link()")}}
-
{{htmlattrxref("href", "a", "<a href=\"url\">")}} (посилання на URL)
-
{{jsxref("String.prototype.small()")}}
-
{{HTMLElement("small")}}
-
{{jsxref("String.prototype.strike()")}}
-
{{HTMLElement("strike")}}
-
{{jsxref("String.prototype.sub()")}}
-
{{HTMLElement("sub")}}
-
{{jsxref("String.prototype.sup()")}}
-
{{HTMLElement("sup")}}
-
- -

Приклади

- -

Перетворення рядка

- -

Можливо використовувати String як більш надійну альтернативу {{jsxref("String.prototype.toString()", "toString()")}}, оскільки вона працює при використанні з {{jsxref("null")}}, {{jsxref("undefined")}} та {{jsxref("Symbol", "символами")}}. Наприклад:

- -
var outputStrings = [];
-for (let i = 0, n = inputValues.length; i < n; ++i) {
-  outputStrings.push(String(inputValues[i]));
-}
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/indexof/index.html b/files/uk/web/javascript/reference/global_objects/string/indexof/index.html deleted file mode 100644 index 3c0639bad4..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/indexof/index.html +++ /dev/null @@ -1,154 +0,0 @@ ---- -title: String.prototype.indexOf() -slug: Web/JavaScript/Reference/Global_Objects/String/indexOf -tags: - - JavaScript - - Prototype - - String - - Довідка - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/indexOf ---- -
{{JSRef}}
- -

Метод indexOf() починає пошук від символа за індексом fromIndex всередині об'єкта {{jsxref("String")}}, з якого здійснюється виклик метода, і вертає індекс першого знайденого збігу із шуканим значенням. Якщо значення не знайдене, повертає -1.

- -

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

- - - -
Заувага: Клас Array має подібний метод {{jsxref("Array.prototype.indexOf()", "indexOf()")}}.
- -

Синтаксис

- -
str.indexOf(searchValue[, fromIndex])
- -

Параметри

- -
-
searchValue
-
Рядок, що є шуканим значенням.
-
Якщо рядок явно не заданий, searchValue буде примусово приведений до "undefined", і пошук цього значення буде здійснюватись у str.
-
Отже, для прикладу: 'undefined'.indexOf() поверне 0, оскільки значення undefined знайдене на позиції 0, але 'undefine'.indexOf() поверне -1, оскільки рядок "undefine" не знайдений.
-
fromIndex {{optional_inline}}
-
Ціле число, що позначає індекс, з якого має розпочинатися пошук; за замовчуванням дорівнює 0.
-
Якщо вказане значення fromIndex менше за 0 чи більше за str.length, пошук розпочнеться з індексу 0 та str.length, відповідно.
-
Для прикладу, 'всім привіт'.indexOf('м', -5) поверне 3, оскільки метод почне пошук з позициї 0, а м знайдеться на позиції 3. З іншого боку, 'всім привіт'.indexOf('м', 11) (і з будь-яким значенням fromIndex, більшим за 11) поверне -1, оскільки пошук починається з позиції 11, позиції після кінця рідка.
-
- -

Вертає

- -

Індекс першого знайденого збігу з searchValue, або -1, якщо жодного збігу не знайдено.

- -

Порожній рядок searchValue призводить до дивних результатів. За відсутності значення fromIndex, чи будь-якого значення fromIndex, нижчого за довжину рядка, повернене значення буде таким самим, як значення fromIndex:

- -
'всім привіт'.indexOf('')    // вертає 0
-'всім привіт'.indexOf('', 0) // вертає 0
-'всім привіт'.indexOf('', 3) // вертає 3
-'всім привіт'.indexOf('', 8) // вертає 8
- -

Однак, якщо значення fromIndex є рівним або більшим за довжину рядка, повернене значення дорівнює довжині рядка:

- -
'всім привіт'.indexOf('', 11) // вертає 11
-'всім привіт'.indexOf('', 13) // вертає 11
-'всім привіт'.indexOf('', 22) // вертає 11
- -

В минулій версії JS порожній рядок відшукувався одразу після вказаного значення індексу. У останній версії JS порожній рядок буде знайдений в кінці рядка, в якому здійснюється пошук.

- -

Опис

- -

Символи рядка індексуються зліва направо. Індекс першого символу дорівнює 0, а індекс останнього символу рядка stringName дорівнює stringName.length - 1.

- -
'Непозбувна бентега'.indexOf('Непозбувна');     // вертає  0
-'Непозбувна бентега'.indexOf('Непозбувний');    // вертає -1
-'Непозбувна бентега'.indexOf('бентега', 0);     // вертає 11
-'Непозбувна бентега'.indexOf('бентега', 5);     // вертає 11
-'Непозбувна бентега'.indexOf('бентега', 12);    // вертає -1
-'Розкішниця'.indexOf('');                       // вертає  0
-'Розкішниця'.indexOf('', 9);                    // вертає  9
-'Розкішниця'.indexOf('', 10);                   // вертає 10
-'Розкішниця'.indexOf('', 11);                   // вертає 10
- -

Метод indexOf() є регістрозалежним. Наприклад, вираз нижче повертає -1:

- -
'Непозбувна бентега'.indexOf('Бентега');  // вертає -1
-
- -

Перевірка наявності підрядка

- -

Зважте на те, що 0 не обчислюється як true, а -1 не обчислюється як false. Отже, належить у явний спосіб порівнювати значення, що повертається методом indexOf(), зі значенням -1:

- -
'Непозбувна бентега'.indexOf('бентега') !== -1;  // true
-'Непозбувна бентега'.indexOf('Бентега') !== -1; // false
-~('Непозбувна бентега'.indexOf('Непозбувний')) // 0, тобто, хибне значення
- -

Приклади

- -

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

- -

Наступний приклад використовує indexOf(), щоб знайти значення у рядку "абабагаламага".

- -
const str = 'абабагаламага'
-
-console.log('Індекс першої г з початку дорівнює ' + str.indexOf('г'))   // виводить 5
-console.log('Індекс "баба" з початку дорівнює ' + str.indexOf('баба'))   // виводить 1
- -

Регістрозалежність метода indexOf()

- -

В цьому прикладі наведено два текстових рядки.

- -

Їх вміст є майже однаковим, але у myCapString слова починаються з великої літери. Перший метод console.log() виводить 13. Але, через те, що метод indexOf() чутливий до регістру, рядок "камамбер" не знаходиться у myCapString, а отже, другий метод console.log() виводить -1.

- -
var myString = 'брі, дорблю, камамбер';
-var myCapString = 'Брі, Дорблю, Камамбер';
-
-console.log('myString.indexOf("камамбер") дорівнює ' + myString.indexOf('камамбер'))
-// виводить 13
-console.log('myCapString.indexOf("камамбер") дорівнює ' + myCapString.indexOf('камамбер'))
-// виводить -1
- -

Використання indexOf() для підрахунку кількості вживань літери у рядку

- -

Наступний приклад присвоює змінній count число вживать літери с у рядку str:

- -
const str = 'Буває, часом сліпну від краси.'
-let count = 0
-let position = str.indexOf('с')
-
-while (position !== -1) {
-  count++
-  position = str.indexOf('с', position + 1)
-}
-
-console.log(count)  // виводить 3
- -

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

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

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/italics/index.html b/files/uk/web/javascript/reference/global_objects/string/italics/index.html deleted file mode 100644 index 9d66e85e66..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/italics/index.html +++ /dev/null @@ -1,65 +0,0 @@ ---- -title: String.prototype.italics() -slug: Web/JavaScript/Reference/Global_Objects/String/italics -tags: - - JavaScript - - String - - метод - - не рекомендований -translation_of: Web/JavaScript/Reference/Global_Objects/String/italics ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод italics() створює HTML-елемент <i>, який відображає рядок курсивом.

- -

Синтаксис

- -
str.italics()
- -

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

- -

Рядок, що містить HTML-елемент <i>.

- -

Опис

- -

Метод italics() вбудовує рядок у тег <i>: "<i>str</i>".

- -

Приклади

- -

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

- -

Наступний приклад використовує рядкові методи, щоб змінити форматування рядка:

- -
var worldString = 'Всім привіт';
-console.log(worldString.blink());  // <blink>Всім привіт</blink>
-console.log(worldString.bold());  // <b>Всім привіт</b>
-console.log(worldString.italics()); // <i>Всім привіт</i>
-console.log(worldString.strike());  // <strike>Всім привіт</strike>
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/lastindexof/index.html b/files/uk/web/javascript/reference/global_objects/string/lastindexof/index.html deleted file mode 100644 index e307125881..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/lastindexof/index.html +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: String.prototype.lastIndexOf() -slug: Web/JavaScript/Reference/Global_Objects/String/lastIndexOf -tags: - - JavaScript - - Prototype - - String - - Довідка - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/lastIndexOf ---- -
{{JSRef}}
- -

Метод lastIndexOf() повертає у об'єкті {{jsxref("String")}}, що його викликав, індекс останнього вживання вказаного значення. Пошук здійснюється з кінця рядка, починаючи з індекса fromIndex. Повертає -1, якщо значення не було знайдене.

- -

{{EmbedInteractiveExample("pages/js/string-lastindexof.html", "shorter")}}

- - - -

Синтаксис

- -
str.lastIndexOf(searchValue[, fromIndex])
- -

Параметри

- -
-
searchValue
-
Рядок, що є шуканим значенням. Якщо searchValue є порожнім рядком, то повертається fromIndex.
-
fromIndex {{optional_inline}}
-
Індекс останнього символу у рядку, який розглядатиметься як початок збігу. Значенням за замовчуванням є +Infinity. Якщо fromIndex >= str.length, пошук здійснюється по всьому рядку. Якщо fromIndex < 0, то результат буде той самий, що і за fromIndex = 0.
-
- -

Вертає

- -

Індекс останнього знайденого збігу (першого з кінця); якщо збігу не знайдено, вертає значення -1.

- -

Опис

- -

Символи рядка мають індекси зліва направо. Індексом першого символу є 0, а індексом останнього str.length - 1.

- -
'морок'.lastIndexOf('о');      // вертає  3
-'морок'.lastIndexOf('о', 2);   // вертає  1
-'морок'.lastIndexOf('о', 0);   // вертає -1
-'морок'.lastIndexOf('ф');      // вертає -1
-'морок'.lastIndexOf('м', -5);  // вертає  0
-'морок'.lastIndexOf('м', 0);   // вертає  0
-'морок'.lastIndexOf('');       // вертає  5
-'морок'.lastIndexOf('', 2);    // вертає  2
-
- -
-

Заувага: 'баба'.lastIndexOf('ба', 2) поверне 2, а не 0, оскільки fromIndex обмежує лише початок збігу.

-
- -

Регістрозалежність метода lastIndexOf()

- -

Метод lastIndexOf() чутливий до регістру. Наприклад, наступний вираз вертає -1:

- -
'Брі, Дорблю, Камамбер'.lastIndexOf('дорблю');  // вертає -1
- -

Приклади

- -

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

- -

Наступний приклад використовує {{jsxref("String.prototype.indexOf()", "indexOf()")}} та lastIndexOf(), щоб знайти значення у рядку "абабагаламага".

- -
var anyString = 'абабагаламага';
-
-console.log('Індекс першого "га" з початку дорівнює ' + anyString.indexOf('га'));
-// виводить 5
-console.log('Індекс першого "га" з кінця дорівнює ' + anyString.lastIndexOf('га'));
-// виводить 11
-console.log('Індекс "баба" з початку дорівнює ' + anyString.indexOf('баба'));
-// виводить 1
-console.log('Індекс "баба" з кінця дорівнює ' + anyString.lastIndexOf('баба'));
-// виводить 1
- -

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

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

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/length/index.html b/files/uk/web/javascript/reference/global_objects/string/length/index.html deleted file mode 100644 index b52a468f96..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/length/index.html +++ /dev/null @@ -1,105 +0,0 @@ ---- -title: string.length -slug: Web/JavaScript/Reference/Global_Objects/String/length -tags: - - JavaScript - - Property - - Prototype - - String - - Властивість - - Довідка - - довжина - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/length ---- -
{{JSRef}}
- -

Властивість length об'єкта {{jsxref("String")}} містить довжину рядка у кодових одиницях UTF-16. Це властивість-значення рядкових екземплярів, доступна лише для читання.

- -

{{EmbedInteractiveExample("pages/js/string-length.html", "shorter")}}

- -

Синтаксис

- -
str.length
- -

Опис

- -

Ця властивість повертає кількість кодових одиниць (англ. code unit), які утворюють рядок. У JavaScript для рядків використовується кодування {{interwiki("wikipedia", "UTF-16")}}, яке вживає одну 16-бітну (двобайтну) кодову одиницю для передачі більшості загальновживаних символів, але для менш поширених воно потребує двох кодових одиниць. Отже, значення, length та справжня кількість символів рядка не завжди збігаються.

- -

У ECMAScript 2016 (вер. 7) було встановлено максимальну довжину у 2^53 - 1 елементів. Попередньо не було визначено ніякої максимальної довжини. У Firefox рядки мають максимальну довжину 2**30 - 2 (~1ГБ). У версіях, більш ранніх за Firefox 65, максимальна довжина складала 2**28 - 1 (~256МБ).

- -

Для порожнього рядка length дорівнює 0.

- -

Статична властивість String.length не пов'язана з довжиною рядків, це арність функції String (загалом, це кількість формальних параметрів, що вона має), яка дорівнює 1.

- -

Юнікод

- -

Оскільки `length` рахує кодові одиниці замість символів, якщо вам треба отримати кількість символів, вам знадобиться щось таке:

- -
function getCharacterLength (str) {
-  // Ітератор рядка, що тут використовується, перебирає символи,
-  // а не просто кодові одиниці
-  return [...str].length;
-}
-
-console.log(getCharacterLength('A\uD87E\uDC04Z')); // 3
-
-// Це не рекомендується, але ви можете додати його до кожного рядка ось так:
-
-Object.defineProperty(String.prototype, 'charLength', {
-  get () {
-    return getCharacterLength(this);
-  }
-});
-
-console.log('A\uD87E\uDC04Z'.charLength); // 3
- -

Приклади

- -

Типове використання

- -
var x = 'Вогнелис';
-let empty = '';
-
-console.log(x + ' має довжину ' + x.length + ' кодових одиниць');
-/* "Вогнелис має довжину 8 кодових одиниць" */
-
-console.log('Порожній рядок має довжину ' + empty.length);
-// очікуваний результат: "Порожній рядок має довжину 0"
-
- -

Присвоювання довжини

- -
let myString = "проліски";
-
-// Спроба присвоїти значення властивості рядка .length не має видимого ефекту.
-myString.length = 4;
-console.log(myString);
-// очікуваний результат: "проліски"
-console.log(myString.length);
-// очікуваний результат: 8
- -

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

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

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/link/index.html b/files/uk/web/javascript/reference/global_objects/string/link/index.html deleted file mode 100644 index 4f20bce4e0..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/link/index.html +++ /dev/null @@ -1,72 +0,0 @@ ---- -title: String.prototype.link() -slug: Web/JavaScript/Reference/Global_Objects/String/link -tags: - - JavaScript - - String - - застарілий - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/link ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод link() створює рядок, що відображає код для HTML-елемента <a>, для використання у якості гіпертекстового посилання на інший URL.

- -

Синтаксис

- -
str.link(url)
- -

Параметри

- -
-
url
-
Будь-який рядок, що визначає атрибут href тега <a>; він має бути коректним локатором ресурсу (відносним чи абсолютним), усі символи & мають бути екрановані як &amp;, а усі символи " - як &quot;.
-
- -

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

- -

Рядок, що містить HTML-елемент <a>.

- -

Опис

- -

Використовуйте метод link(), щоб створити HTML-код для гіпертекстового посилання. Повернений рядок можна додати у document через document.write() або element.innerHTML.

- -

Посилання, створені методом link(), стають елементами масиву links об'єкта document. Дивіться document.links.

- -

Приклади

- - - -

Наступний приклад відображаєє слово "MDN" як гіпертекстове посилання, яке повертає користувача на сайт Mozilla Developer Network.

- -
var hotText = 'MDN';
-var URL = 'https://developer.mozilla.org/';
-
-console.log('Натисніть, щоб повернутись на ' + hotText.link(URL));
-// Натисніть, щоб повернутись на <a href="https://developer.mozilla.org/">MDN</a>
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/localecompare/index.html b/files/uk/web/javascript/reference/global_objects/string/localecompare/index.html deleted file mode 100644 index 9fe8fac165..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/localecompare/index.html +++ /dev/null @@ -1,173 +0,0 @@ ---- -title: String.prototype.localeCompare() -slug: Web/JavaScript/Reference/Global_Objects/String/localeCompare -tags: - - JavaScript - - Method - - Prototype - - String - - Довідка - - Уміжнароднення - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/localeCompare ---- -
{{JSRef}}
- -

Метод localeCompare() повертає число, яке вказує, як має розташуватись рядок відносно вказаного (того, що передано як параметр) у відсортованій за зростанням послідовності: перед, після, чи вони однакові.

- -

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

- - - -

Нові арґументи locales та options дають можливість вказати мову, абетковий порядок сортування якої має бути застосовано, та налаштувати механізм порівняння рядків. Раніше, коли цих арґументів ще не було, механізм порівняння рядків та порядок їх сортування цілковито залежав від реалізації.

- -

Синтаксис

- -
referenceStr.localeCompare(compareString[, locales[, options]])
- -

Параметри

- -

Перевіряйте в таблиці сумісності наявність підтримки арґументів locales та options, а також подивіться на код для перевірки наявності такої підтримки.

- -
-
compareString
-
Рядок, з яким буде здійснено порівняння.
-
- -
-

Аргументи locales та options налаштовують поведінку функції та дозволяють застосункам визначати мову, конвенції якої щодо форматування мають використовуватись. У тих реалізаціях, які ігнорують аргументи locales та options, локаль, що використовується, та форма поверненого рядка повністю залежать від реалізації.

- -

Деталі цих параметрів та як їх використовувати дивіться у статті Конструктор Intl.Collator().

-
- -

Вертає

- - - -

Опис

- -

Вертає ціле число, що вказує, чи рядок referenceStr розташований перед compareStr, після compareStr, чи є еквівалентним compareStr.

- - - -

НЕ ПОКЛАДАЙТЕСЬ на точні повернені значення -1 чи 1. Від'ємні та додатні цілочисельні результати різняться між переглядачами (а також між версіями переглядачів), тому що специфікація W3C вимагає лише від'ємних та додатних значень. Деякі переглядачі можуть повернути -2 чи 2, чи навіть деякі інші від'ємні та додатні значення.

- -

Приклади

- -

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

- -
// Вертає від'ємне значення, позаяк літера «a» розташована раніше за «b»
-'a'.localeCompare('c');  // -2 чи -1 (або інше від'ємне значення)
-
-// Вертає додатне значення, позаяк за абеткою слово "check" слід розташувати після "against"
-'check'.localeCompare('against');  // 2 чи 1 (або інше додатне значення)
-
-// Вертає нуль, позаяк рядки однакові
-'a'.localeCompare('a');  // 0
-
- -

Сортування масиву

- -

Метод localeCompare() надає можливість регістронезалежного сортування масивів:

- -
var items = ['réservé', 'Premier', 'Cliché', 'communiqué', 'café', 'Adieu'];
-items.sort((a, b) => a.localeCompare(b, 'fr', {ignorePunctuation: true})); // ['Adieu', 'café', 'Cliché', 'communiqué', 'Premier', 'réservé']
- -

Перевірка наявності підтримки додаткових арґументів веб-переглядачем

- -

Арґументи locales та options досі не підтримуються всіма переглядачами. Тож, з метою з'ясування наявності підтримки можна скористатися тим, що метод викидає (лише за наявності такої підтримки згаданих арґументів) виняток {{jsxref("Global_Objects/RangeError", "RangeError")}}, якщо параметр locales не вказує належного мовного коду. Наприклад, вкажемо напевне відсутній код "i":

- -
function checkLocaleCompareSupportsLocales() {
-  try {
-    'foo'.localeCompare('bar', 'i');
-  } catch (e) {
-    return e.name === 'RangeError';
-  }
-  return false;
-}
-
- -

Використання locales

- -

Порівняння рядків за допомогою localeCompare() узалежнено від мови. Для застосування належного для вживаної мови (наприклад, для мови користувацького інтерфейсу вашого застосунку) порядку сортування, не забудьте вказати відповідний мовний код (або й запасні мовні коди) через параметр locales:

- -
// виводить від'ємне значення (у німецькій абетці літера «ä» розташована раніше «z»)
-console.log('ä'.localeCompare('z', 'de'));
-
-// виводить додатне значення (у шведській абетці літера «ä» розташована пізніше «z»)
-console.log('ä'.localeCompare('z', 'sv'));
-
- -

Використання options

- -

Арґумент options надає можливість додаткового налаштування способу порівняння рядків методом localeCompare():

- -
// У німецькій мові літера «ä» є похідною від базової літери «a»
-// виводить 0
-console.log('ä'.localeCompare('a', 'de', {sensitivity: 'base'}));
-
-// У шведській мові «ä» та «a» є окремими базовими літерами
-// виводить додатне значення
-console.log('ä'.localeCompare('a', 'sv', {sensitivity: 'base'}));
-
- -

Сортування чисел

- -
// за замовчуванням, "2" > "10"
-console.log("2".localeCompare("10")); // 1
-
-// сортування за допомогою options:
-console.log("2".localeCompare("10", undefined, {numeric: true})); // -1
-
-// сортування за допомогою тега locales:
-console.log("2".localeCompare("10", "en-u-kn-true")); // -1
- -

Швидкодія

- -

З огляду на швидкодію, для порівняння величезної кількості рядків (наприклад, під час сортування великих масивів) ліпше створювати об'єкт {{jsxref("Global_Objects/Collator", "Intl.Collator")}} та використовувати функцію, надану його властивістю {{jsxref("Collator.prototype.compare", "compare")}}:

- -
function sortLargeStringArray(array, locale) {
-  var collator = new Intl.Collator(locale);
-  array.sort(collator.compare);
-}
-
-// sortLargeStringArray([ … ], 'uk');
-
- -

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

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

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/match/index.html b/files/uk/web/javascript/reference/global_objects/string/match/index.html deleted file mode 100644 index dfc6bf5f6b..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/match/index.html +++ /dev/null @@ -1,194 +0,0 @@ ---- -title: String.prototype.match() -slug: Web/JavaScript/Reference/Global_Objects/String/match -tags: - - JavaScript - - Method - - Prototype - - String - - Довідка - - Регулярний вираз - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/match ---- -
{{JSRef}}
- -

Метод match() шукає та повертає (якщо є) збіги рядка із зазначеним регулярним виразом.

- -

{{EmbedInteractiveExample("pages/js/string-match.html", "shorter")}}

- - - -

Синтаксис

- -
str.match(regexp)
- -

Параметри

- -
-
regexp
-
Об'єкт регулярного виразу.
-
Якщо передати значення іншого типу, воно буде неявно перетворене на {{jsxref("RegExp")}} за допомогою оператора new RegExp(regexp).
-
Якщо жодного параметра не вказано, метод поверне {{jsxref("Array","масив")}} з одним елементом — порожнім рядком: [""].
-
- -

Вертає

- -

{{jsxref("Array","Масив")}}, чий вміст залежить від наявності чи відсутності глобального (g) прапора, або {{jsxref("null")}}, якщо жодних збігів не знайдено.

- - - -

Додаткові властивості

- -

Як пояснювалось вище, деякі результати містять наступні додаткові властивості:

- -
-
groups
-
Масив іменованих захоплених груп або {{jsxref("undefined")}}, якщо іменовані групи не були визначені. Дивіться Групи та діапазони, щоб дізнатись більше.
-
index
-
Індекс пошуку, за яким був знайдений результат.
-
input 
-
Копія рядка, в якому здійснювався пошук.
-
- -

Опис

- -

Якщо регулярний вираз не позначено прапорцем g, виклик str.match() повертає такий самий результат, що й {{jsxref("RegExp.prototype.exec()", "RegExp.exec()")}}.

- -

Інші методи

- - - -

Приклади

- -

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

- -

У прикладі нижче метод match() задіяно, щоб знайти слово «розділ», за ним одну чи кілька цифр, далі десяткова крапка та 0 чи більше числових символів.

- -

Регулярний вираз позначено прапорцем i, що означає відсутність розрізнювання великих та малих літер.

- -
var str = 'Докладніше див. розділ 3.4.5.1';
-var re = /див\. (розділ \d+(\.\d)*)/i;
-var found = str.match(re);
-
-console.log(found);
-
-// Виводить:
-// [
-//   0: "див. розділ 3.4.5.1"
-//   1: "розділ 3.4.5.1"
-//   2: ".1"
-//   index: 11
-//   input: "Докладніше див. розділ 3.4.5.1"
-// ]
-
-// Рядок "див. розділ 3.4.5.1" є повним збігом.
-// Рядок "розділ 3.4.5.1" — це підрядок, захоплений підвиразом '(розділ \d+(\.\d)*)'
-// Рядок ".1" — це останній підрядок, захоплений підвиразом '(\.\d)'
-// Властивість 'index' (11) — це зсув підрядка, що відповідає регулярному виразові
-// Властивість 'input' — це повна копія досліджуваного рядка str
-
- -

Вживання прапорців i та g із методом match()

- -

Приклад нижче засвідчує дію прапорців i (ignore case — регістронезалежний режим) та g (global — пошук усіх збігів, а не тільки першого) при використанні метода match(). Будуть повернені усі літери від A до E та від a до e, кожна як окремий елемент масиву.

- -
var str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
-var regexp = /[A-E]/gi;
-var matches_array = str.match(regexp);
-
-console.log(matches_array);
-// ['A', 'B', 'C', 'D', 'E', 'a', 'b', 'c', 'd', 'e']
-
- -
-

Заувага: Дивіться також метод {{jsxref("String.prototype.matchAll()")}} та Складний пошук за допомогою прапорів.

-
- -

Використання іменованих груп

- -

У переглядачах, які підтримують іменовані захоплені групи, наступний код захопить "їжак" чи "кіт" у групу на ім'я "тварина":

- -
let paragraph = 'Єхидна, ґава, їжак ще й шиплячі плазуни бігцем форсують Янцзи.';
-
-let capturingRegex = /(?<тварина>їжак|кіт) ще й/;
-found = paragraph.match(capturingRegex);
-console.log(found.groups); // {тварина: "їжак"}
- -

Використання match() без параметрів

- -
var str = "Я — Дух одвічної стихії";
-
-// вертає ["", index: 0, input: "Я — Дух одвічної стихії"]
-str.match();
- -

Параметр відмінного від RegExp типу

- -

Якщо переданий параметр являє собою рядок або число, його буде перетворено на об'єкт {{jsxref("RegExp")}} шляхом неявного виклику new RegExp(obj).

- -

Якщо це додатнє число, його знаком + буде знехтувано, проте для від'ємного числа знак - стане частиною регулярного виразу:

- -
var str1 = "NaN означає «не число». Нескінченність у JavaScript має дві форми: -Infinity та +Infinity.",
-    str2 = "Моїй бабці 65 років, а дідусеві — 63.",
-    str3 = "Незмінна величина null позначає відсутність очікуваного значення.";
-
-str1.match("число");    // "число" є рядком; вертає ["число"]
-str1.match(NaN);        // величина NaN є числом; вертає ["NaN"]
-str1.match(Infinity);   // величина Infinity також є числом; вертає ["Infinity"]
-str1.match(+Infinity);  // вертає ["Infinity"]
-str1.match(-Infinity);  // вертає ["-Infinity"]
-str2.match(65);         // вертає ["65"]
-str2.match(+65);        // додатнє число; вертає ["65"]
-str3.match(null);       // вертає ["null"]
- -

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

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

Підтримка веб-переглядачами

- -

Базова підтримка методу match()

- - - -

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

- -

Підтримка іменованих груп

- -

{{Compat("javascript.builtins.RegExp.named_capture_groups")}}

- -

Зауваги щодо Firefox

- - - -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/matchall/index.html b/files/uk/web/javascript/reference/global_objects/string/matchall/index.html deleted file mode 100644 index 396fb3b2bc..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/matchall/index.html +++ /dev/null @@ -1,143 +0,0 @@ ---- -title: String.prototype.matchAll() -slug: Web/JavaScript/Reference/Global_Objects/String/matchAll -tags: - - JavaScript - - String - - Регулярні Вирази - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/matchAll ---- -
{{JSRef}}
- -

Метод matchAll() повертає ітератор з усіма збігами рядка з регулярним виразом, а також захоплені групи.

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

Синтаксис

- -
str.matchAll(regexp)
- -

Параметри

- -
-
regexp
-
-

Об'єкт регулярного виразу.

- -

Якщо передано об'єкт obj, який не є регулярним виразом, він неявно перетворюється на {{jsxref("RegExp")}} за допомогою new RegExp(obj).

- -

Об'єкт RegExp повинен мати прапор /g, інакше буде викинуто помилку TypeError.

-
-
- -

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

- -

Ітератор (ітерабельний об'єкт, який не можна повторно запустити).

- -

Приклади

- -

Regexp.exec() та matchAll()

- -

До появи у JavaScript методу matchAll можна було використовувати виклики regexp.exec (а також регулярні вирази з прапором /g) у циклі, щоб отримати усі збіги:

- -
const regexp = RegExp('фу[а-я]*','g');
-const str = 'настільний футбол, фусбол';
-let match;
-
-while ((match = regexp.exec(str)) !== null) {
-  console.log(`Знайдено ${match[0]} початок=${match.index} кінець=${regexp.lastIndex}.`);
-  // виведе: "Знайдено футбол початок=11 кінець=17."
-  // виведе: "Знайдено фусбол початок=19 кінець=25."
-}
- -

З методом matchAll можна уникнути використання циклу {{jsxref("Statements/while", "while")}} та методу exec з g.

- -

Замість цього, використовуючи matchAll, ви отримуєте ітератор, який можна використовувати з більш зручними конструкціями {{jsxref("Statements/for...of", "for...of")}}, {{jsxref("Operators/Spread_syntax", "розкладанням масиву")}} чи {{jsxref("Array.from()")}}:

- -
const regexp = RegExp('фу[а-я]*','g');
-const str = 'настільний футбол, фусбол';
-const matches = str.matchAll(regexp);
-
-for (const match of matches) {
-  console.log(`Знайдено ${match[0]} початок=${match.index} кінець=${match.index + match[0].length}.`);
-}
-// виведе: "Знайдено футбол початок=11 кінцець=17."
-// виведе: "Знайдень фусбол початок=19 кінець=25."
-
-// Ітератор matches є вичерпаним після перебору for..of
-// Викличте matchAll ще раз, щоб створити новий ітератор
-Array.from(str.matchAll(regexp), m => m[0]);
-// Array [ "футбол", "фусбол" ]
- -

Метод matchAll викине виняток, якщо прапор g відсутній.

- -
const regexp = RegExp('[а-в]','');
-const str = 'абв';
-str.matchAll(regexp);
-// TypeError
-
- -

matchAll робить внутрішній клон regexp, тому, на відміну від {{jsxref("Global_Objects/RegExp/exec", "regexp.exec()")}}, lastIndex не змінюється під час пошуку.

- -
const regexp = RegExp('[а-в]','g');
-regexp.lastIndex = 1;
-const str = 'абв';
-Array.from(str.matchAll(regexp), m => `${regexp.lastIndex} ${m[0]}`);
-// Array [ "1 б", "1 в" ]
- -

Кращий доступ до захоплених груп (ніж у String.prototype.match())

- -

Ще одна приваблива причина використовувати matchAll - покращений доступ до захоплених груп.

- -

Захоплені групи ігноруються при використанні {{jsxref("Global_Objects/String/match", "match()")}} з глобальним прапором /g:

- -
let regexp = /т(е)(ст(\d?))/g;
-let str = 'тест1тест2';
-
-str.match(regexp);
-// Array ['тест1', 'тест2']
- -

Використовуючи matchAll, ви можете легко звертатись до захоплених груп:

- -
let array = [...str.matchAll(regexp)];
-
-array[0];
-// ['тест1', 'е', 'ст1', '1', index: 0, input: 'тест1тест2', length: 4]
-array[1];
-// ['тест2', 'е', 'ст2', '2', index: 5, input: 'тест1тест2', length: 4]
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/normalize/index.html b/files/uk/web/javascript/reference/global_objects/string/normalize/index.html deleted file mode 100644 index 15b56e2bad..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/normalize/index.html +++ /dev/null @@ -1,226 +0,0 @@ ---- -title: String.prototype.normalize() -slug: Web/JavaScript/Reference/Global_Objects/String/normalize -tags: - - ECMAScript 2015 - - JavaScript - - String - - Unicode - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/normalize ---- -
{{JSRef}}
- -

Метод normalize() повертає рядок у формі нормалізації Юнікоду.

- -
{{EmbedInteractiveExample("pages/js/string-normalize.html", "taller")}}
- - - -

Синтаксис

- -
str.normalize([form])
- -

Параметри

- -
-
form {{optional_inline}}
-
-

Одне зі значень "NFC", "NFD", "NFKC" або "NFKD", що вказують форму нормалізації Юнікоду. Якщо не вказана, або дорівнює {{jsxref("undefined")}}, використовується "NFC".

- -

Ці значення означають наступне:

- -
-
"NFC"
-
Канонічна декомпозиція, з подальшою канонічною композицією.
-
"NFD"
-
Канонічна декомпозиція.
-
"NFKC"
-
Сумісна декомпозиція, з подальшою канонічною композицією.
-
"NFKD"
-
Сумісна декомпозиція.
-
-
-
- -

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

- -

Рядок, що містить форму нормалізації Юнікоду для наданого рядка.

- -

Помилки

- -
-
{{jsxref("RangeError")}}
-
Помилка {{jsxref("RangeError")}} викидається, якщо form не є одним з наведених вище значень.
-
- -

Опис

- -

Юнікод присвоює унікальне числове значення, яке називається кодом символа, кожному символу. Наприклад, кодом символа "A" є U+0041. Однак, іноді більше, ніж один код символа, або послідовність кодів, можуть представляти один і той самий абстрактний символ — наприклад, символ "ñ" може бути представлений:

- - - -
let string1 = '\u00F1';
-let string2 = '\u006E\u0303';
-
-console.log(string1);  //  ñ
-console.log(string2);  //  ñ
-
- -

Однак, оскільки коди символів відрізняються, порівняння рядків не вважатиме їх рівними. А оскільки кількість кодів символів у цих варіантах різна, то вони навіть мають різні довжини.

- -
let string1 = '\u00F1';            // ñ
-let string2 = '\u006E\u0303';      // ñ
-
-console.log(string1 === string2); // false
-console.log(string1.length);      // 1
-console.log(string2.length);      // 2
-
- -

Метод normalize() допомагає вирішити цю проблему, перетворюючи рядок у нормалізовану форму, спільну для усіх послідовностей кодів символів, які представляють однакові символи. Існують дві основні форми нормалізації, одна базується на канонічній еквівалентності, а інша на сумісності.

- -

Нормалізація на основі канонічної еквівалентності

- -

В Юнікоді дві послідовності кодів символів канонічно еквівалентні, якщо вони відображають однакові абстрактні символи, і повинні завжди мати однакове візуальне відображення та поведінку (для прикладу, вони завжди повинні сортуватися однаковим чином).

- -

Ви можете скористатись методом normalize(), використовуючи аргументи "NFD" або "NFC", щоб створити форму рядка, що буде однаковою для усіх канонічно еквівалентних рядків. У наведеному нижче прикладі ми нормалізуємо два відображення символу "ñ":

- -
let string1 = '\u00F1';           // ñ
-let string2 = '\u006E\u0303';     // ñ
-
-string1 = string1.normalize('NFD');
-string2 = string2.normalize('NFD');
-
-console.log(string1 === string2); // true
-console.log(string1.length);      // 2
-console.log(string2.length);      // 2
-
- -

З'єднана та розкладена форми

- -

Зауважте, що довжина нормалізованої форми при використанні "NFD" дорівнює 2. Це тому, що "NFD" дає вам розкладену версію канонічної форми, в якій один код символа розбивається на множину складових. Розкладеною канонічною формою для "ñ" є "\u006E\u0303".

- -

Ви можете вказати "NFC", щоб отримати з'єднану канонічну форму, в якій множина кодів символів замінюється єдиним кодом символу, де це можливо. З'єднаною канонічною формою для "ñ" є "\u00F1":

- -
let string1 = '\u00F1';                           // ñ
-let string2 = '\u006E\u0303';                     // ñ
-
-string1 = string1.normalize('NFC');
-string2 = string2.normalize('NFC');
-
-console.log(string1 === string2);                 // true
-console.log(string1.length);                      // 1
-console.log(string2.length);                      // 1
-console.log(string2.codePointAt(0).toString(16)); // f1
- -

Нормалізація на основі сумісності

- -

В Юнікоді дві послідовності кодів символів є сумісними, якщо вони представляють однакові абстрактні символи, і мають сприйматися однаково у деяких — але не обов'язково в усіх — застосуваннях.

- -

Усі канонічно еквівалентні послідовності також є сумісними, але не навпаки.

- -

Наприклад:

- - - -

У деяких ситуаціях (таких, як сортування) вони мають сприйматися як еквівалентні, а у деяких (таких, як візуальне відображення) — ні, отже, вони не є канонічно еквівалентними.

- -

Ви можете скористатись методом normalize(), використовуючи аргументи "NFKD" або "NFKC", щоб створити форму рядка, яка буде однаковою для усіх сумісних рядків:

- -
let string1 = '\uFB00';
-let string2 = '\u0066\u0066';
-
-console.log(string1);             // ff
-console.log(string2);             // ff
-console.log(string1 === string2); // false
-console.log(string1.length);      // 1
-console.log(string2.length);      // 2
-
-string1 = string1.normalize('NFKD');
-string2 = string2.normalize('NFKD');
-
-console.log(string1);             // ff <- візуальне відображення змінилось
-console.log(string2);             // ff
-console.log(string1 === string2); // true
-console.log(string1.length);      // 2
-console.log(string2.length);      // 2
-
- -

Застосовуючи сумісну нормалізацію, важливо враховувати, що саме ви намагаєтесь зробити з рядками, оскільки нормалізована форма може не підходити для усіх застосувань. У наведеному вище прикладі нормалізація підходить для пошуку, бо дозволяє користувачу знайти рядок пошуком "f". Але вона може не підходити для відображення, бо зовнішній вигляд символа відрізняється.

- -

Як і у випадку з канонічною нормалізацією, ви можете застосовувати розкладену або з'єднану форми, передаючи, відповідно, "NFKD" або "NFKC".

- -

Приклади

- -

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

- -
// Початковий рядок
-
-// U+1E9B: ЛАТИНСЬКА МАЛА ЛІТЕРА ДОВГА S З КРАПКОЮ ЗГОРИ
-// U+0323: ОБ'ЄДНУЮЧА КРАПКА ВНИЗУ
-let str = '\u1E9B\u0323';
-
-
-// Канонічно-з'єднана форма (NFC)
-
-// U+1E9B: ЛАТИНСЬКА МАЛА ЛІТЕРА ДОВГА S З КРАПКОЮ ЗГОРИ
-// U+0323: ОБ'ЄДНУЮЧА КРАПКА ВНИЗУ
-str.normalize('NFC'); // '\u1E9B\u0323'
-str.normalize();      // такий самий
-
-
-// Канонічно-розкладена форма (NFD)
-
-// U+017F: ЛАТИНСЬКА МАЛА ЛІТЕРА ДОВГА S
-// U+0323: ОБ'ЄДНУЮЧА КРАПКА ВНИЗУ
-// U+0307: ОБ'ЄДНУЮЧА КРАПКА ЗГОРИ
-str.normalize('NFD'); // '\u017F\u0323\u0307'
-
-
-// Сумісно-з'єднана (NFKC)
-
-// U+1E69: ЛАТИНСЬКА МАЛА ЛІТЕРА S З КРАПКОЮ ВНИЗУ ТА КРАПКОЮ ЗГОРИ
-str.normalize('NFKC'); // '\u1E69'
-
-
-// Сумісно-розкладена (NFKD)
-
-// U+0073: ЛАТИНСЬКА МАЛА ЛІТЕРА S
-// U+0323: ОБ'ЄДНУЮЧА КРАПКА ВНИЗУ
-// U+0307: ОБ'ЄДНУЮЧА КРАПКА ЗГОРИ
-str.normalize('NFKD'); // '\u0073\u0323\u0307'
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/padend/index.html b/files/uk/web/javascript/reference/global_objects/string/padend/index.html deleted file mode 100644 index 8f9fbd2e63..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/padend/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -title: String.prototype.padEnd() -slug: Web/JavaScript/Reference/Global_Objects/String/padEnd -tags: - - JavaScript - - String - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/padEnd ---- -
{{JSRef}}
- -

Метод padEnd() доповнює поточний рядок наданим рядком (повторюючи його, якщо треба), так, щоб отриманий в результаті рядок досяг заданої довжини. Доповнення застосовується з кінця поточного рядка.

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

Синтаксис

- -
str.padEnd(targetLength [, padString])
- -

Параметри

- -
-
targetLength
-
Довжина результуючого рядка після доповнення поточного рядка. Якщо значення є меншим за довжину поточного рядка, поточний рядок буде повернений без змін.
-
padString {{optional_inline}}
-
Рядок, яким потрібно доповнити поточний рядок. Якщо цей рядок надто довгий для отримання заданої довжини, він буде обрізаний: для мов з письмом зліва направо буде застосована ліва частина, а для мов з письмом справа наліво - права частина. Значенням за замовчуванням для цього параметра є " " (U+0020).
-
- -

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

- -

{{jsxref("String", "Рядок")}} вказаної довжини з доповненням, застосованим в кінці поточного рядка.

- -

Приклади

- -
'абв'.padEnd(10);          // "абв       "
-'абв'.padEnd(10, "ква");   // "абвкваквак"
-'абв'.padEnd(6, "123456"); // "абв123"
-'абв'.padEnd(1);           // "абв"
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/padstart/index.html b/files/uk/web/javascript/reference/global_objects/string/padstart/index.html deleted file mode 100644 index 4f7e48a94f..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/padstart/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -title: String.prototype.padStart() -slug: Web/JavaScript/Reference/Global_Objects/String/padStart -tags: - - JavaScript - - String - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/String/padStart ---- -
{{JSRef}}
- -

Метод padStart() доповнює поточний рядок іншим рядком (кілька раз, якщо треба), доки отриманий рядок не досягне заданої довжини. Доповнення застосовується з початку поточного рядка.

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

Синтаксис

- -
str.padStart(targetLength [, padString])
- -

Параметри

- -
-
targetLength
-
Довжина результуючого рядка після доповнення поточного рядка str. Якщо значення є меншим за його довжину str.length, то str повертається без змін.
-
padString {{optional_inline}}
-
Рядок, яким потрібно доповнити поточний рядок str. Якщо padString надто довгий для отримання заданої довжини targetLength, він буде обрізаний з кінця. Значенням за замовчуванням є " " (U+0020 'ПРОБІЛ').
-
- -

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

- -

{{jsxref("String", "Рядок")}} заданої довжини targetLength з доповненням padString, застосованим на початку.

- -

Приклади

- -

Базові приклади

- -
'абв'.padStart(10);         // "       абв"
-'абв'.padStart(10, "ква");  // "кваквакабв"
-'абв'.padStart(6,"123465"); // "123абв"
-'абв'.padStart(8, "0");     // "00000абв"
-'абв'.padStart(1);          // "абв"
- -

Перетворення числа на рядок фіксованої ширини

- -
// Версія Javascript для: (unsigned)
-//  printf "%0*d" width num
-function leftFillNum(num, targetLength) {
-    return num.toString().padStart(targetLength, 0);
-}
-
-const num = 123;
-console.log(leftFillNum(num, 5));
-// очікуваний результат: "00123"
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/raw/index.html b/files/uk/web/javascript/reference/global_objects/string/raw/index.html deleted file mode 100644 index 6383506ec5..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/raw/index.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -title: String.raw() -slug: Web/JavaScript/Reference/Global_Objects/String/raw -tags: - - ECMAScript 2015 - - JavaScript - - String - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/raw ---- -
{{JSRef}}
- -

Статичний метод String.raw() є функцією-тегом шаблонних літералів. Він схожий на префікс r у мові Python, або на префікс @ у мові C# для рядкових літералів. (Але вони не ідентичні; дивіться пояснення у цій проблемі.) Він використовується для отримання сирої рядкової форми шаблонних рядків, тобто, підстановки (наприклад, ${foo}) обробляються, а екранування (наприклад, \n) ні.

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

Синтаксис

- -
String.raw(callSite, ...substitutions)
-
-String.raw`templateString`
-
- -

Параметри

- -
-
callSite
-
Добре сформований об'єкт-шаблон точки виклику, наприклад { raw: ['раз', 'два', 'три'] }.
-
...substitutions
-
Містить значення підстановок.
-
templateString
-
{{jsxref("template_strings", "Шаблонний рядок")}}, може містити підстановки (${...}).
-
- -

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

- -

Сира рядкова форма наданого шаблонного рядка.

- -

Винятки

- -
-
{{jsxref("TypeError")}}
-
Помилка {{jsxref("TypeError")}} викидається, якщо перший аргумент не є добре сформованим об'єктом.
-
- -

Опис

- -

У більшості випадків String.raw() використовується з шаблонними рядками. Перший синтаксис, наведений вище, використовується лише зрідка, тому що рушій JavaScript викличе його для вас з правильними аргументами (як і інші функції-теги).

- -

String.raw() - єдина вбудована функція-тег шаблонних рядків. Вона працює як звичайна шаблонна функція та виконує об'єднання. Ви навіть можете перевизначити її звичайним кодом JavaScript.

- -

Приклади

- -

Використання String.raw()

- -
String.raw`Привіт\n${2+3}!`;
-// 'Привіт\n5!', символ після 'Привіт' -
-// це не символ нового рядка,
-// '\' та 'n' є двома символами.
-
-String.raw`Привіт\u000A!`;
-// 'Привіт\u000A!', те саме тут, цього разу ми отримуємо
-//  6 символів, \, u, 0, 0, 0, A.
-// Усі символи екранування будут неефективні,
-// а зворотні слеши будуть присутні у отриманому рядку.
-// Ви можете підтвертиди це, перевіривши властивість рядка .length.
-
-let name = 'Боб';
-String.raw`Привіт,\nце ${name}!`;
-// 'Привіт,\nце Боб!', підстановки обробляються.
-
-// Зазвичай, ви б не викликали String.raw() як функцію,
-// але, щоб симулювати `раз${2 + 3}два${'Java' + 'Script'}три`, можна зробити:
-String.raw({
-  raw: ['раз', 'два', 'три']
-}, 2 + 3, 'Java' + 'Script'); // 'раз5дваJavaScriptтри'
-// Зауважте, що перший аргумент - об'єкт з властивістю 'raw',
-// чиїм значенням є ітерабельний об'єкт, що представляє відокремлені рядки
-// у шаблонному літералі.
-// Решта аргументів - це підстановки.
-
-// Значенням 'raw' першого аргументу може бути будь-який ітерабельний об'єкт,
-// навіть рядок! Наприклад, 'тест' сприймається як ['т', 'е', 'с', 'т'].
-// Наступний код еквівалентний цьому
-// `т${0}е${1}с${2}т`:
-String.raw({ raw: 'тест' }, 0, 1, 2); // 'т0е1с2т'
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/repeat/index.html b/files/uk/web/javascript/reference/global_objects/string/repeat/index.html deleted file mode 100644 index 101776ad15..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/repeat/index.html +++ /dev/null @@ -1,119 +0,0 @@ ---- -title: String.prototype.repeat() -slug: Web/JavaScript/Reference/Global_Objects/String/repeat -tags: - - ECMAScript 2015 - - JavaScript - - String - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/repeat ---- -
{{JSRef}}
- -

Метод repeat() створює та повертає новий рядок, що містить вказану кількість об'єднаних разом копій рядка, на якому він був викликаний.

- -
{{EmbedInteractiveExample("pages/js/string-repeat.html","shorter")}}
- - - -

Синтаксис

- -
str.repeat(count)
-
- -

Параметри

- -
-
count
-
Ціле число в діапазоні між 0 та {{jsxref("Global_Objects/Number/POSITIVE_INFINITY", "+Infinity")}}, що вказує кількість повторів рядка.
-
- -

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

- -

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

- -

Винятки

- - - -

Приклади

- -
'абв'.repeat(-1)    // RangeError
-'абв'.repeat(0)     // ''
-'абв'.repeat(1)     // 'абв'
-'абв'.repeat(2)     // 'абвабв'
-'абв'.repeat(3.5)   // 'абвабвабв' (count буде перетворений на ціле число)
-'абв'.repeat(1/0)   // RangeError
-
-({ toString: () => 'абв', repeat: String.prototype.repeat }).repeat(2)
-// 'абвабв' (repeat() є загальним методом)
-
- -

Поліфіл

- -

Цей метод був доданий у специфікацію ECMAScript 2015 та може поки не бути доступним в усіх реалізаціях JavaScript. Однак, ви можете створити поліфіл String.prototype.repeat() за допомогою наступного коду:

- -
if (!String.prototype.repeat) {
-  String.prototype.repeat = function(count) {
-    'use strict';
-    if (this == null)
-      throw new TypeError('неможливо перетворити ' + this + ' на об\'єкт');
-
-    var str = '' + this;
-    // Щоб перетворити рядок на ціле число.
-    count = +count;
-    // Перевірка на NaN
-    if (count != count)
-      count = 0;
-
-    if (count < 0)
-      throw new RangeError('repeat count must be non-negative');
-
-    if (count == Infinity)
-      throw new RangeError('repeat count must be less than infinity');
-
-    count = Math.floor(count);
-    if (str.length == 0 || count == 0)
-      return '';
-
-    // Гарантія того, що count є цілим 31-бітним числом, дозволяє значно оптимізувати
-    // головну частину. Але, все ж, найновіші (серпень 2014) переглядачі не можуть
-    // впоратись з рядками з 1 << 28 символів чи довше, а отже:
-    if (str.length * count >= 1 << 28)
-      throw new RangeError('repeat count must not overflow maximum string size');
-
-    var maxCount = str.length * count;
-    count = Math.floor(Math.log(count) / Math.log(2));
-    while (count) {
-       str += str;
-       count--;
-    }
-    str += str.substring(0, maxCount - str.length);
-    return str;
-  }
-}
- -

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

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

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

- - - -

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

diff --git a/files/uk/web/javascript/reference/global_objects/string/replace/index.html b/files/uk/web/javascript/reference/global_objects/string/replace/index.html deleted file mode 100644 index 35f4a5ab54..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/replace/index.html +++ /dev/null @@ -1,240 +0,0 @@ ---- -title: String.prototype.replace() -slug: Web/JavaScript/Reference/Global_Objects/String/replace -tags: - - JavaScript - - String - - вирази - - метод - - регулярний - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/replace ---- -
{{JSRef}}
- -

Метод replace() повертає новий рядок, в якому деякі або усі збіги з шаблоном замінені параметром заміни. Шаблон може бути рядком або {{jsxref("RegExp","регулярним виразом")}}, а заміна може бути рядком або функцією, що викликатиметься для кожного збігу. Якщо шаблон є рядком, буде замінений лише перший збіг.

- -

Початковий рядок лишається незміненим.

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

Синтаксис

- -
const newStr = str.replace(regexp|substr, newSubstr|function)
- -

Параметри

- -
-
regexp (шаблон)
-
Об'єкт або літерал {{jsxref("RegExp")}}. Збіг чи збіги замінюються рядком newSubstr або значенням, яке вертає вказана функція function.
-
substr
-
{{jsxref("String","Рядок")}}, який потрібно замінити на newSubstr. Він сприймається як рядковий літерал та не інтерпретується як регулярний вираз. Замінюється лише перше співпадіння.
-
newSubstr (заміна)
-
{{jsxref("String","Рядок")}}, який замінює підрядок, вказаний параметром regexp або substr. Підтримується можливість задавати декілька спеціальних шаблонів заміни; дивіться розділ "Використання рядка в якості параметра" нижче.
-
function (заміна)
-
Функція, що викликатиметься для створення нового підрядка, який буде використовуватись для заміни збігів з наданим параметром regexp або substr. Аргументи, що передаються в цю функцію, описані у розділі "Використання функції в якості параметра" нижче.
-
- -

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

- -

Новий рядок, в якому деякі або усі збіги з шаблоном замінені наданим значенням.

- -

Опис

- -

Цей метод не змінює об'єкт {{jsxref("String")}}, що його викликав. Він просто повертає новий рядок.

- -

Щоб виконати глобальний пошук та заміну, використовуйте перемикач g у регулярному виразі.

- -

Використання рядка в якості параметра

- -

Рядок заміни може містити наступні спеціальні шаблони заміни:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ШаблонВставляє
$$Вставляє "$".
$&Вставляє знайдений підрядок.
$`Вставляє частину рядка, що передує знайденому підрядку.
$'Вставляє частину рядка, що розташована за знайденим підрядком.
$nДе n є додатним цілим числом, меншим за 100, вставляє n-й підрядок збігів у дужках, за умови, що першим аргументом був об'єкт {{jsxref("RegExp")}}. Зауважте, що вони індексуються з 1.
- -

Використання функції в якості параметра

- -

Ви можете вказати функцію в якості другого параметра. У цьому випадку функція буде викликана після знайдення збігу. Результат функції (повернене значення) буде використаний в якості рядка заміни. (Заувага: Вищезазначені спеціальні шаблони заміни не застосовуються у цьому випадку.)

- -

Зауважте, що функція буде викликатись багаторазово, для кожного повного збігу, що буде замінений, якщо регулярний вираз у першому параметрі є глобальним.

- -

Функція має наступні аргументи:

- - - - - - - - - - - - - - - - - - - - - - - - - - -
Можливе ім'яНадане значення
matchЗнайдений підрядок. (Відповідає вищенаведеному $&)
p1, p2, ...n-й рядок, знайдений захопленою групою у дужках, за умови, що першим аргументом методу replace() був об'єкт {{jsxref("RegExp")}}. (Відповідає вищенаведеним $1, $2, і т.д.) Наприклад, якщо був наданий аргумент /(\a+)(\b+)/, то p1 є збігом з \a+, а p2 - збігом з \b+.
offsetЗсув знайденого підрядка всередині рядка, що перевіряється. (Наприклад, якби цілим рядком був 'абвг', а знайденим підрядком 'бв', то цей аргумент дорівнював би 1.)
stringВесь рядок, що перевіряється.
- -

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

- -

Наступний приклад присвоїть newString значення 'абв - 12345 - #$*%':

- -
function replacer(match, p1, p2, p3, offset, string) {
-  // p1 - не цифри, p2 - цифри, а p3 - не літерно-цифрові символи
-  return [p1, p2, p3].join(' - ');
-}
-let newString = 'абв12345#$*%'.replace(/([^\d]*)(\d*)([^\w]*)/, replacer);
-console.log(newString);  // абв - 12345 - #$*%
-
- -

Приклади

- -

Визначення регулярного виразу у replace()

- -

У наступному прикладі регулярний вираз визначається у методі replace() та містить прапор ігнорування регістру.

- -
let str = 'Наближається Різдво у чарівній Миші...';
-let newstr = str.replace(/миші/i, 'тиші');
-console.log(newstr);  // Наближається Різдво у чарівній тиші...
-
- -

Цей код виводить 'Наближається Різдво у чарівній тиші...'.

- -
-

Заувага: Більше пояснень щодо регулярних виразів дивіться у цьому посібнику.

-
- -

Використання глобального пошуку та ігнорування регістру з replace()

- -

Глобальну заміну можна зробити лише з використанням регулярного виразу. У наступному прикладі регулярний вираз містить прапори глобального пошуку та ігнорування регістру, які дозволяють методу replace() замінити кожний знайдений підрядок 'яблука' на 'апельсини'.

- -
let re = /яблука/gi;
-let str = 'Яблука круглі, і яблука сочні.';
-let newstr = str.replace(re, 'апельсини');
-console.log(newstr);  // апельсини круглі, і апельсини сочні.
-
- -

Цей код виводить 'апельсини круглі, і апельсини сочні.'.

- -

Код, що міняє слова місцями

- -

Наступний скрипт міняє місцями слова у рядку. В якості тексту заміни скрипт використовує захоплені групи та шаблони заміни $1 та $2.

- -
let re = /(\w+)\s(\w+)/;
-let str = 'John Smith';
-let newstr = str.replace(re, '$2, $1');
-console.log(newstr);  // Smith, John
-
- -

Цей код виводить 'Smith, John'.

- -

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

- -

У цьому прикладі усі великі літери перетворюються на малі, а перед розташуванням збігу вставляється дефіс. Важливим тут є те, що необхідно виконати додаткові операції над збігом перед тим, як він буде повернений в якості заміни.

- -

Функція заміни приймає фрагмент збігу в якості параметра і використовує його для перетворення регістру та приєднання дефісу перед поверненням.

- -
function styleHyphenFormat(propertyName) {
-  function upperToHyphenLower(match, offset, string) {
-    return (offset > 0 ? '-' : '') + match.toLowerCase();
-  }
-  return propertyName.replace(/[A-Z]/g, upperToHyphenLower);
-}
-
- -

Наступний код styleHyphenFormat('borderTop') поверне 'border-top'.

- -

Оскільки ми хочемо далі трансформувати результат збігу перед останочною заміною, нам потрібно використовувати функцію. Це запускає обчислення збігу пред викликом методу {{jsxref("String.prototype.toLowerCase()", "toLowerCase()")}}. Якби ми спробували зробити це, використовуючи збіг без функії, метод {{jsxref("String.prototype.toLowerCase()", "toLowerCase()")}} не мав би жодного ефекту.

- -
let newString = propertyName.replace(/[A-Z]/g, '-' + '$&'.toLowerCase());  // не спрацює
-
- -

Все тому, що '$&'.toLowerCase() спочатку був би обчислений як рядковий літерал (і в результаті повернув би той самий рядок '$&') перед використанням його символів в якості шаблону.

- -

Заміна градусів Фаренгейта на еквівалент у градусах Цельсія

- -

Наступний приклад замінює значення градусів за Фаренгейтом на його еквівалент у градусах Цельсія. Значення градусів Фаренгейта має бути числом, що закінчується літерою "F". Функція повертає число за Цельсієм, що закінчується літерою "C". Наприклад, якщо вхідне число дорівнює "212F", функція повертає "100C". Якщо число дорівнює "0F", функція вертає "-17.77777777777778C".

- -

Регулярний вираз test перевіряє будь-яке число, що закінчується літерою F. Значення градусів Фаренгейта доступне функції через її другий параметр p1. Функція присвоює значення за Цельсієм, базуючись на градусах Фаренгейта, переданих у рядку до функції f2c(). Далі f2c() повертає значення за Цельсієм. Ця функція схожа на прапор мови Perl s///e.

- -
function f2c(x) {
-  function convert(str, p1, offset, s) {
-    return ((p1 - 32) * 5/9) + 'C';
-  }
-  let s = String(x);
-  let test = /(-?\d+(?:\.\d*)?)F\b/g;
-  return s.replace(test, convert);
-}
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/replaceall/index.html b/files/uk/web/javascript/reference/global_objects/string/replaceall/index.html deleted file mode 100644 index ac59dbc1af..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/replaceall/index.html +++ /dev/null @@ -1,169 +0,0 @@ ---- -title: String.prototype.replaceAll() -slug: Web/JavaScript/Reference/Global_Objects/String/replaceAll -tags: - - JavaScript - - String - - regex - - Регулярний вираз - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/replaceAll ---- -
{{JSRef}}
- -

Метод replaceAll() повертає новий рядок, в якому усі збіги з шаблоном замінені вказаним параметром заміни. Шаблон може бути рядком або {{jsxref("RegExp","регулярним виразом")}}, а заміна може бути рядком або функцією, що викликатиметься для кожного збігу.

- -

Початковий рядок лишається незміненим.

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

Синтаксис

- -
const newStr = str.replaceAll(regexp|substr, newSubstr|function)
- -

Параметри

- -
-
regexp (шаблон)
-
Об'єкт або літерал {{jsxref("RegExp","регулярного виразу")}} з глобальним прапором. Збіги замінюються на newSubstr або значення, яке повертає вказана функція function. Регулярний вираз без глобального ("g") прапора викине помилку TypeError: "replaceAll must be called with a global RegExp".
-
substr
-
{{jsxref("String", "Рядок")}}, який потрібно замінити на newSubstr. Він вважається звичайним рядком та не інтерпретується як регулярний вираз.
-
newSubstr (заміна)
-
{{jsxref("String","Рядок")}}, який замінює підрядок, вказаний параметром regexp або substr. Підтримується ряд спеціальних шаблонів заміни; дивіться нижче розділ "Використання рядка в якості параметра".
-
function (заміна)
-
Функція, що буде викликана для створення нового підрядка, який замінить збіги з наданим параметром regexp або substr. Аргументи, що передаються в цю функцію, описані нижче в розділі "Використання функції в якості параметра".
-
- -

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

- -

Новий рядок, в якому усі збіги з шаблоном замінені.

- -

Опис

- -

Цей метод не змінює об'єкт {{jsxref("String")}}, що його викликав. Він просто повертає новий рядок.

- -

Використання рядка в якості параметра

- -

Рядок заміни може містити наступні спеціальні шаблони заміни:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ШаблонВставляє
$$Вставляє "$".
$&Вставляє знайдений підрядок.
$`Вставляє частину рядка, що передує знайденому підрядку.
$'Вставляє частину рядка, що розташована за знайденим підрядком.
$nДе n є додатним цілим числом, меншим за 100, вставляє n-й підрядок збігів у дужках, за умови, що першим аргументом був об'єкт {{jsxref("RegExp")}}. Зауважте, що вони індексуються з 1.
- -

Використання функції в якості параметра

- -

Ви можете вказати функцію в якості другого параметра. У цьому випадку функція буде викликана після знайдення збігу. Результат функції (повернене значення) буде використаний в якості рядка заміни. (Заувага: Вищезазначені спеціальні шаблони заміни не застосовуються у цьому випадку.)

- -

Зауважте, що функція буде викликатись багаторазово, для кожного повного збігу, що буде замінений, якщо регулярний вираз у першому параметрі є глобальним.

- -

Функція має наступні аргументи:

- - - - - - - - - - - - - - - - - - - - - - - - - - -
Можливе ім'яНадане значення
matchЗнайдений підрядок. (Відповідає вищенаведеному $&)
p1, p2, ...n-й рядок, знайдений захопленою групою у дужках, за умови, що першим аргументом методу replace() був об'єкт {{jsxref("RegExp")}}. (Відповідає вищенаведеним $1, $2 і т.д.) Наприклад, якщо був наданий аргумент /(\a+)(\b+)/, то p1 є збігом з \a+, а p2 - збігом з \b+.
offsetЗсув знайденого підрядка всередині рядка, що перевіряється. (Наприклад, якби цілим рядком був 'абвг', а знайденим підрядком 'бв', то цей аргумент дорівнював би 1.)
stringВесь рядок, що перевіряється.
- -

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

- -

Приклади

- -

Використання replaceAll

- -
'ааббвв'.replaceAll('б', '.');
-// 'аа..вв'
- -

Неглобальний регулярний вираз викидає виняток

- -

Якщо використовується регулярний вираз в якості значення пошуку, він повинен бути глобальним. Це не працюватиме:

- -
'ааббвв'.replaceAll(/б/, '.');
-TypeError: replaceAll must be called with a global RegExp
-
- -

Так працюватиме:

- -
'ааббвв'.replaceAll(/б/g, '.');
-"аа..вв"
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/search/index.html b/files/uk/web/javascript/reference/global_objects/string/search/index.html deleted file mode 100644 index 7d81b5d0a3..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/search/index.html +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: String.prototype.search() -slug: Web/JavaScript/Reference/Global_Objects/String/search -tags: - - JavaScript - - Prototype - - String - - Довідка - - Регулярний вираз -translation_of: Web/JavaScript/Reference/Global_Objects/String/search ---- -
{{JSRef}}
- -

Метод search() здійснює пошук у рядку за вказаним регулярним виразом.

- -

Синтаксис

- -
str.search(regexp)
- -

Параметри

- -
-
regexp
-
Об'єкт регулярного виразу. Якщо передати значення value іншого типу, його буде зведено до {{jsxref("RegExp")}} за допомогою оператора new RegExp(value).
-
- -

Вертає

- -

Індекс початку першого збігу між рядком та переданим регулярним виразом; якщо збігу не знайдено, вертає значення -1.

- -

Опис

- -

Метод search() використовується тоді, коли треба не лише знати, чи містить рядок відповідну послідовність, а й з'ясувати, в якому саме місці вона починається. Натомість можно скористатися методом {{jsxref("RegExp.prototype.test()")}}, що вертає boolean, якщо треба з'ясувати лише наявність такої послідовності.
- Ще детальнішу інформацію про результат пошуку (коштом нижчої швидкодії) можна отримати за допомогою метода {{jsxref("String.prototype.match()", "match()")}} або {{jsxref("RegExp.prototype.exec()")}}.

- -

Приклади

- -

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

- -

В цьому прикладі наведено успішний пошук (метод вертає невід'ємне значення):

- -
var str = "Красно дякую, панове!";
-
-// Шукаємо послідовність із шести рядкових (маленьких) літер.
-var pattern = /[а-я]{6}/g;
-console.log(str.search(pattern));  // вертає 14, що є індексом літери «п»
- -

Натомість в уьому прикладі знайти шукане неможливо (рядок не містить жодної крапки), тож метод вертає значення -1:

- -
var str = "Щиро вітаю, друже мій!";
-var pattern = /[.]/g;
-console.log(str.search(pattern));  // вертає -1
-
- -

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

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
СпецифікаціяСтатусКоментар
{{SpecName('ES3')}}{{Spec2('ES3')}}Початкова виознака, запроваджено у JavaScript 1.2.
{{SpecName('ES5.1', '#sec-15.5.4.12', 'String.prototype.search')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-string.prototype.search', 'String.prototype.search')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-string.prototype.search', 'String.prototype.search')}}{{Spec2('ESDraft')}} 
- -

Підтримка веб-переглядачами

- - - -

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

- -

Зауваги щодо Gecko

- - - -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/slice/index.html b/files/uk/web/javascript/reference/global_objects/string/slice/index.html deleted file mode 100644 index 944e757382..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/slice/index.html +++ /dev/null @@ -1,116 +0,0 @@ ---- -title: String.prototype.slice() -slug: Web/JavaScript/Reference/Global_Objects/String/slice -tags: - - JavaScript - - String - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/slice ---- -
{{JSRef}}
- -

Метод slice() вирізає частину рядка та повертає її як новий рядок, не змінюючи початковий.

- -
{{EmbedInteractiveExample("pages/js/string-slice.html", "taller")}}
- - - -

Синтаксис

- -
str.slice(beginIndex[, endIndex])
- -

Параметри

- -
-
beginIndex
-
-

Індекс на основі нуля, з якого починається копіювання. Якщо індекс від'ємний, він сприймається як str.length + beginIndex. (Наприклад, якщо beginIndex дорівнює -3, він сприймається як str.length - 3.)

- -

Якщо значення beginIndex більше за довжину рядка str.length або дорівнює їй, slice() повертає порожній рядок.

-
-
endIndex {{optional_inline}}
-
-

Індекс на основі нуля, до якого треба виконувати копіювання. Символ за цим індексом не буде включений.

- -

Якщо endIndex відсутній, slice() копіює до кінця рядка. Якщо його значення від'ємне, він сприймається як str.length + endIndex. (Наприклад, якщо endIndex дорівнює -3, він сприймається як str.length - 3.)

-
-
- -

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

- -

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

- -

Опис

- -

Метод slice() дістає текст з одного рядка та повертає новий рядок. Зміни у тексті одного з рядків не впливають на інший рядок.

- -

slice() скопіює текст по індекс endIndex (але не включно). str.slice(1,4) копіює з другого по четвертий символ (символи за індексами 1, 2, та 3).

- -

Наприклад, str.slice(2, -1) копіює частину від третього до другого з кінця символу рядка.

- -

Приклади

- -

Використання slice() для створення нового рядка

- -

Наступний приклад використовує slice(), щоб створити новий рядок.

- -
let str1 = "П'ять мавпенят стрибали на столі", // довжина str1 дорівнює 32.
-    str2 = str1.slice(1, 8),
-    str3 = str1.slice(6, -2),
-    str4 = str1.slice(15),
-    str5 = str1.slice(32);
-console.log(str2)  // РЕЗУЛЬТАТ: 'ять ма
-console.log(str3)  // РЕЗУЛЬТАТ: мавпенят стрибали на сто
-console.log(str4)  // РЕЗУЛЬТАТ: стрибали на столі
-console.log(str5)  // РЕЗУЛЬТАТ: ""
- -

Використання slice() з від'ємними індексами

- -

Наступний приклад використовує slice() з від'ємними індексами.

- -
let str = "П'ять мавпенят стрибали на столі."
-str.slice(-6)      // вертає "столі."
-str.slice(-6, -1)  // вертає "столі"
-str.slice(0, -1)   // вертає "П'ять мавпенят стрибали на столі"
- -

Цей приклад відраховує у зворотньому напрямку, від кінця рядка, 12, щоб знайти початковий індекс, та вперед з початку рядка 25, щоб знайти кінцевий індекс.

- -
console.log(str.slice(-12, 25)) // => "ли н"
- -

Тут він рахує вперед від початку 21, щоб знайти початковий індекс, і у зворотньому напрямку з кінця 8, щоб знайти кінцевий індекс.

- -
console.log(str.slice(21, -8)) // => "ли н"
- -

Ці аргументи відраховують у зворотньому напрямку з кінця 5, щоб знайти початковий індекс, та у зворотньому напрямку з кінця 1, щоб знайти кінцевий індекс.

- -
console.log(str.slice(-5, -1)) // => "толі"
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/small/index.html b/files/uk/web/javascript/reference/global_objects/string/small/index.html deleted file mode 100644 index b7cf6d34e6..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/small/index.html +++ /dev/null @@ -1,70 +0,0 @@ ---- -title: String.prototype.small() -slug: Web/JavaScript/Reference/Global_Objects/String/small -tags: - - JavaScript - - String - - метод - - не рекомендований - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/small ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод small() створює HTML-елемент <small>, який відображає рядок зменшеним шрифтом.

- -

Синтаксис

- -
str.small()
- -

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

- -

Рядок, що містить HTML-елемент <small>.

- -

Опис

- -

Метод small() вбудовує рядок у тег <small>: "<small>str</small>".

- -

Приклади

- -

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

- -

Наступний приклад використовує рядкові методи, щоб змінювати розмір рядка:

- -
var worldString = 'Привіт';
-
-console.log(worldString.small());     // <small>Привіт</small>
-console.log(worldString.big());       // <big>Привіт</big>
-console.log(worldString.fontsize(7)); // <font size="7">Привіт</fontsize>
-
- -

Використовуючи об'єкт element.style, ви можете отримати атрибут елемента style та маніпулювати ним у більш загальному стилі, наприклад:

- -
document.getElementById('yourElemId').style.fontSize = '0.7em';
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/split/index.html b/files/uk/web/javascript/reference/global_objects/string/split/index.html deleted file mode 100644 index 6aa3a2c251..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/split/index.html +++ /dev/null @@ -1,220 +0,0 @@ ---- -title: String.prototype.split() -slug: Web/JavaScript/Reference/Global_Objects/String/split -tags: - - JavaScript - - String - - Регулярний вираз - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/split ---- -
{{JSRef}}
- -

Метод split() розділяє {{jsxref("String","рядок")}} на впорядковану множину підрядків та повертає масив цих підрядків. Ділення здійснюється пошуком шаблону; цей шаблон надається першим параметром під час виклику методу.

- -
{{EmbedInteractiveExample("pages/js/string-split.html", "taller")}}
- - - -

Синтаксис

- -
str.split([separator[, limit]])
- -

Параметри

- -
-
separator {{optional_inline}}
-
-

Шаблон, що описує, де має відбуватися розбиття рядка. Параметр separator (роздільник) може бути простим рядком або {{jsxref("Global_Objects/RegExp", "регулярним виразом", "", 1)}}.

- -
    -
  • Найпростішим є випадок, коли separator є просто одним символом; він використовується для розмежування та розбиття рядка. Наприклад, рядок, що містить значення, розділені табуляцією (TSV, tab-separated values), може бути розібраний за символом табуляції в якості роздільника, ось так: myString.split("\t").
  • -
  • Якщо separator містить множину символів, для розділення має бути знайдена вся ця послідовність.
  • -
  • Якщо параметр separator не вказаний чи не зустрічається у str, повернений масив містить один елемент, який є цілим рядком.
  • -
  • Якщо separator знаходиться на початку (чи в кінці) рядка, він все одно матиме ефект роздільника. Результатом буде порожній (тобто, нульової довжини) рядок, який з'явиться на першій (чи останній) позиції поверненого масиву.
  • -
  • Якщо separator є порожнім рядком (""), str перетворюється на масив з кожного зі своїх "символів" UTF-16.
  • -
- -
-

Застереження: Коли в якості роздільника використовується порожній рядок (""), рядок не розбивається на символи, що сприймаються користувачем (кластери графем), чи символи Юнікоду (коди символів), а лише на кодові одиниці UTF-16. Це розбиває сурогатні пари. Дивіться “Як перетворити рядок на масив символів у JavaScript?” на StackOverflow.

-
-
-
limit {{optional_inline}}
-
-

Невід'ємне ціле число, що обмежує кількість частин. Якщо надане, метод розбиває рядок на кожному знайденому роздільнику separator, але зупиняється, коли у масив була додана кількість елементів limit. Будь-який текст, що лишився, взагалі не буде доданий у масив.

- -
    -
  • Масив може містити меншу за limit кількість елементів, якщо рядок закінчився раніше, ніж було досятнуто значення limit.
  • -
  • Якщо limit дорівнює 0, розділення рядка не виконується.
  • -
-
-
- -

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

- -

{{jsxref("Array", "Масив")}} рядків, відділених у кожній точці, де роздільник separator зустрічається у наданому рядку.

- -

Опис

- -

Коли separator знайдено, він видаляється з рядка, а підрядки повертаються у масиві.

- -

Якщо separator є регулярним виразом із захопленими групами, то під час кожного збігу з separator результати (в тому числі undefined) захоплених груп додаються у масив результатів.

- -

Якщо роздільник є масивом, то він примусово приводиться до рядка та використовується в якості роздільника.

- -

Приклади

- -

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

- -
-

Коли рядок порожній, split() повертає масив, що містить один порожній рядок, а не порожній масив. Якщо і рядок, і роздільник є порожніми рядками, повертається порожній масив.

- -
const myString = ''
-const splits = myString.split()
-
-console.log(splits)
-
-// ↪ [""]
-
-
- -

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

- -
function splitString(stringToSplit, separator) {
-  const arrayOfStrings = stringToSplit.split(separator)
-
-  console.log('Початковий рядок: ', stringToSplit)
-  console.log('Роздільник: ', separator)
-  console.log('Масив містить ', arrayOfStrings.length, ' елементів: ', arrayOfStrings.join(' / '))
-}
-
-const tempestString = 'Який чудесний світ новий оцей де отакі є люди!'
-const monthString = 'Січ,Лют,Берез,Квіт,Трав,Черв,Лип,Серп,Верес,Жовт,Листоп,Груд'
-
-const space = ' '
-const comma = ','
-
-splitString(tempestString, space)
-splitString(tempestString)
-splitString(monthString, comma)
-
- -

Цей приклад виводить наступний результат:

- -
Початковий рядок:  Який чудесний світ новий оцей де отакі є люди!
-Роздільник: " "
-Масив містить  9  елементів:  Який / чудесний / світ / новий / оцей / де / отакі / є / люди!
-
-Початковий рядок:  Який чудесний світ новий оцей де отакі є люди!
-Роздільник: "undefined"
-Масив містить  1  елементів:  Який чудесний світ новий оцей де отакі є люди!
-
-Початковий рядок:  Січ,Лют,Берез,Квіт,Трав,Черв,Лип,Серп,Верес,Жовт,Листоп,Груд
-Роздільник: ","
-Масив містить  12  елементів:  Січ / Лют / Берез / Квіт / Трав / Черв / Лип / Серп / Верес / Жовт / Листоп / Груд
- -

Видалення пробілів з рядка

- -

У наступному прикладі split() шукає нуль або більше пробілів з наступною крапкою з комою, з наступним нулем чи більше пробілів — і, коли знаходить, видаляє пробіли та крапку з комою з рядка. nameList є масивом, що повертається як результат методу split().

- -
const names = 'Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand '
-
-console.log(names)
-
-const re = /\s*(?:;|$)\s*/
-const nameList = names.split(re)
-
-console.log(nameList)
-
- -

Цей код виводить два рядки; перший виводить початковий рядок, а другий - масив, отриманий в результаті.

- -
Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand
-[ "Harry Trump", "Fred Barney", "Helen Rigby", "Bill Abel", "Chris Hand", "" ]
- -

Повернення обмеженої кількості елементів

- -

У наступному прикладі split() шукає пробіли у рядку та повертає перші 3 елементи, які знаходить.

- -
const myString = 'Всім привіт. Як справи?'
-const splits = myString.split(' ', 3)
-
-console.log(splits)
-
- -

Цей скрипт виведе наступне:

- -
["Всім", "привіт.", "Як"]
-
- -

Розбиття за допомогою RegExp з додаванням частин роздільника у результат

- -

Якщо separator є регулярним виразом, що містить дужки (), то збіги також додаються у масив.

- -
const myString = 'Привіт 1 слово. Речення номер 2.'
-const splits = myString.split(/(\d)/)
-
-console.log(splits)
-
- -

Цей скрипт виведе наступне:

- -
[ "Привіт ", "1", " слово. Речення номер ", "2", "." ]
- -
-

Заувага: \d відповідає символьному класу цифр між 0 та 9.

-
- -

Перевертання рядка за допомотою split()

- -
-

Це не найнадійніший спосіб перевертання рядка:

- -
const str = 'йцуке'
-const strReverse = str.split('').reverse().join('')
-// 'екуцй'
-
-// split() повертає масив, на якому можна застосувати reverse() та join()
-
- -

Він не працює, якщо рядок містить кластери графем, навіть при використанні методу split, сумісного з Юнікодом (замість цього скористайтесь, наприклад, esrever).

- -
const str = 'résumé'
-const strReverse = str.split(/(?:)/u).reverse().join('')
-// => "́emuśer"
-
- -

Бонус: скористайтесь оператором {{jsxref("Operators/Оператори_порівняння", "===", "#Ідентичність_строга_рівність")}}, щоб перевірити, чи був початковий рядок паліндромом.

-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/startswith/index.html b/files/uk/web/javascript/reference/global_objects/string/startswith/index.html deleted file mode 100644 index a1850169e5..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/startswith/index.html +++ /dev/null @@ -1,96 +0,0 @@ ---- -title: String.prototype.startsWith() -slug: Web/JavaScript/Reference/Global_Objects/String/startsWith -tags: - - ECMAScript 2015 - - JavaScript - - String - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/startsWith ---- -
{{JSRef}}
- -

Метод startsWith() визначає, чи починається рядок з символів заданого рядка, повертаючи, відповідно, true чи false.

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

Синтаксис

- -
str.startsWith(searchString[, position])
- -

Параметри

- -
-
searchString
-
Символи, які шукатимуться на початку рядка.
-
position {{optional_inline}}
-
Позиція у цьому рядку, з якої починатиметься пошук рядка searchString. За замовчуванням 0.
-
- -

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

- -

true, якщо надані символи знайдені на початку рядка; інакше, false.

- -

Опис

- -

Цей метод дозволяє визначити, починається чи ні рядок з символів іншого рядка. Цей метод чутливий до регістру.

- -

Приклади

- -

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

- -
let str = 'Питання в тому: бути чи не бути.'
-
-console.log(str.startsWith('Питання'))   // true
-console.log(str.startsWith('бути'))      // false
-console.log(str.startsWith('бути', 16))  // true
-
- -

Поліфіл

- -

Цей метод був доданий у специфікації ECMAScript 2015 і може не бути доступним в усіх реалізаціях JavaScript. Однак, ви можете створити поліфіл String.prototype.startsWith() за допомогою наступного коду:

- -
if (!String.prototype.startsWith) {
-    Object.defineProperty(String.prototype, 'startsWith', {
-        value: function(search, rawPos) {
-            var pos = rawPos > 0 ? rawPos|0 : 0;
-            return this.substring(pos, pos + search.length) === search;
-        }
-    });
-}
-
- -

Більш надійний (у повній відповідності до специфікації ES2015), але менш швидкий та компактний поліфіл доступний на GitHub за авторством Mathias Bynens.

- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/strike/index.html b/files/uk/web/javascript/reference/global_objects/string/strike/index.html deleted file mode 100644 index 55ab07f635..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/strike/index.html +++ /dev/null @@ -1,67 +0,0 @@ ---- -title: String.prototype.strike() -slug: Web/JavaScript/Reference/Global_Objects/String/strike -tags: - - JavaScript - - String - - метод - - не рекомендований - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/strike ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод strike() створює HTML-елемент <strike>, який відображає рядок з перекресленим текстом.

- -

Синтаксис

- -
str.strike()
- -

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

- -

Рядок, що містить HTML-елемент <strike>.

- -

Опис

- -

Метод strike() вбудовує рядок у тег <strike>: "<strike>str</strike>".

- -

Приклади

- -

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

- -

Наступний приклад використовує рядкові методи, щоб змінити форматування рядка:

- -
var worldString = 'Всім привіт';
-
-console.log(worldString.blink()); // <blink>Всім привіт</blink>
-console.log(worldString.bold()); // <b>Всім привіт</b>
-console.log(worldString.italics()); // <i>Всім привіт</i>
-console.log(worldString.strike()); // <strike>Всім привіт</strike>
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/string/index.html b/files/uk/web/javascript/reference/global_objects/string/string/index.html deleted file mode 100644 index 65f85d4d0a..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/string/index.html +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: Конструктор String() -slug: Web/JavaScript/Reference/Global_Objects/String/String -tags: - - JavaScript - - String - - Конструктор - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/String ---- -
{{JSRef}}
- -

Конструктор String використовується для створення нового об'єкта {{jsxref("String")}}. Він виконує перетворення типів, коли викликається як функція, а не як конструктор, що, зазвичай, більш корисно.

- -

Синтаксис

- -
new String(thing)
-String(thing)
- -

Параметри

- -
-
thing
-
Будь-що, що перетвориться на рядок.
-
- -

Приклади

- -

Конструктор String та функція String

- -

Функція String та конструктор String повертають різні результати:

- -
typeof String('Всім привіт'); // string
-typeof new String('Всім привіт'); // object
-
- -

Тут функція, як і обіцяно, повертає рядок (простий тип даних). Однак, конструктор повертає екземпляр типу String (об'єкт-обгортку), саме тому вам нечасто захочеться взагалі використовувати конструктор String.

- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/sub/index.html b/files/uk/web/javascript/reference/global_objects/string/sub/index.html deleted file mode 100644 index 5aa09a91ce..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/sub/index.html +++ /dev/null @@ -1,68 +0,0 @@ ---- -title: String.prototype.sub() -slug: Web/JavaScript/Reference/Global_Objects/String/sub -tags: - - HTML - - JavaScript - - String - - метод - - не рекомендований - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/sub ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод sub() створює HTML-елемент <sub>, який відображає рядок у вигляді нижнього індексу.

- -

Синтаксис

- -
str.sub()
- -

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

- -

Рядок, що містить HTML-елемент <sub>.

- -

Опис

- -

Метод sub() вбудовує рядок у тег <sub>: "<sub>str</sub>".

- -

Приклади

- -

Використання методів sub() та sup()

- -

Наступний приклад використовує методи sub() та {{jsxref("String.prototype.sup()", "sup()")}} для форматування рядка:

- -
var superText = 'верхній індекс';
-var subText = 'нижній індекс';
-
-console.log('Так виглядає ' + superText.sup() + '.');
-// Так виглядає <sup>верхній індекс</sup>.
-
-console.log('Так виглядає ' + subText.sub() + '.');
-// Так виглядає <sub>нижній індекс</sub>.
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/substr/index.html b/files/uk/web/javascript/reference/global_objects/string/substr/index.html deleted file mode 100644 index 265ef1552d..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/substr/index.html +++ /dev/null @@ -1,118 +0,0 @@ ---- -title: String.prototype.substr() -slug: Web/JavaScript/Reference/Global_Objects/String/substr -tags: - - JavaScript - - String - - метод - - не рекомендований - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/substr ---- -

{{JSRef}}

- -
Застереження: Хоча метод String.prototype.substr(…) не є строго не рекомендованим (як "прибраний з веб-стандартів"), він вважається застарілим та не бажаний для використання, коли це можливо. Він не є частиною ядра мови JavaScript та може бути прибраний в майбутньому. За можливості, використовуйте замість нього метод substring().
- -

Метод substr() повертає частину рядка, що починається з вказаного індекса та продовжується вказану кількість символів.

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

Синтаксис

- -
str.substr(start[, length])
- -

Параметри

- -
-
start
-
Індекс першого символу, який треба включити у повернений рядок.
-
length
-
Необов'язковий. Кількість символів, яку треба повернути.
-
- -

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

- -

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

- -

Опис

- -

Метод substr() вирізає length символів з рядка string, рахуючи з початкового індексу start.

- -

Якщо start є додатним числом, індекс рахується з початку рядка. Його значення обмежується значенням str.length.
- Якщо start є від'ємним числом, індекс рахується з кінця рядка. Його значення обмежується значенням -str.length.
- Заувага: У Microsoft JScript від'ємне значення аргументу start не вважається посиланням на кінець рядка.

- -

Якщо аргумент length пропущений, substr() повертає символи до кінця рядка.
- Якщо length дорівнює {{jsxref("undefined")}}, substr() повертає символи до кінця рядка.
- Якщо length є від'ємним числом, він вважається рівним 0.

- -

Для обох, start та length, NaN вважається рівним 0.

- -

Приклади

- -

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

- -
var aString = 'Mozilla';
-
-console.log(aString.substr(0, 1));   // 'M'
-console.log(aString.substr(1, 0));   // ''
-console.log(aString.substr(-1, 1));  // 'a'
-console.log(aString.substr(1, -1));  // ''
-console.log(aString.substr(-3));     // 'lla'
-console.log(aString.substr(1));      // 'ozilla'
-console.log(aString.substr(-20, 2)); // 'Mo'
-console.log(aString.substr(20, 2));  // ''
-
- -

Поліфіл

- -

JScript у Microsoft не підтримує від'ємні значення початкового індекса. Щоб використовувати цю функціональність у JScript, ви можете скористатись наступним кодом:

- -
// запускайте тільки якщо функція substr() не працює
-if ('ab'.substr(-1) != 'b') {
-  /**
-   *  Отримати підрядок з рядка
-   *  @param  {integer}  start   де почати підрядок
-   *  @param  {integer}  length  скільки символів повертати
-   *  @return {string}
-   */
-  String.prototype.substr = function(substr) {
-    return function(start, length) {
-      // викликаємо початковий метод
-      return substr.call(this,
-      	// якщо ми отримали від'ємний start, порахувати, скільки це від початку рядка
-        // відкоригувати параметр start для від'ємного значення
-        start < 0 ? this.length + start : start,
-        length)
-    }
-  }(String.prototype.substr);
-}
-
- -

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

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

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

- - - -

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

- -

Див. також

- - 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")}}

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/sup/index.html b/files/uk/web/javascript/reference/global_objects/string/sup/index.html deleted file mode 100644 index 5fcc97cdee..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/sup/index.html +++ /dev/null @@ -1,66 +0,0 @@ ---- -title: String.prototype.sup() -slug: Web/JavaScript/Reference/Global_Objects/String/sup -tags: - - JavaScript - - String - - метод - - не рекомендований - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/sup ---- -
{{JSRef}} {{deprecated_header}}
- -

Метод sup() створює HTML-елемент <sup>, який відображає рядок у вигляді верхнього індексу.

- -

Синтаксис

- -
str.sup()
- -

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

- -

Рядок, що містить HTML-елемент <sup>.

- -

Опис

- -

Метод sup() вбудовує рядок у тег <sup>: "<sup>str</sup>".

- -

Приклади

- -

Використання методів sub() та sup()

- -

Наступний приклад використовує методи {{jsxref("String.prototype.sub()", "sub()")}} та sup() для форматування рядка:

- -
var superText = 'верхній індекс';
-var subText = 'нижній індекс';
-
-console.log('Так виглядає ' + superText.sup() + '.');
-// Так виглядає <sup>верхній індекс</sup>.
-
-console.log('Так виглядає ' + subText.sub() + '.');
-// Так виглядає <sub>нижній індекс</sub>.
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/tolocalelowercase/index.html b/files/uk/web/javascript/reference/global_objects/string/tolocalelowercase/index.html deleted file mode 100644 index 2e595bc9a0..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/tolocalelowercase/index.html +++ /dev/null @@ -1,106 +0,0 @@ ---- -title: String.prototype.toLocaleLowerCase() -slug: Web/JavaScript/Reference/Global_Objects/String/toLocaleLowerCase -tags: - - Internationalization - - JavaScript - - Method - - Prototype - - String - - Довідка - - Уміжнароднення -translation_of: Web/JavaScript/Reference/Global_Objects/String/toLocaleLowerCase ---- -
{{JSRef}}
- -

Метод toLocaleLowerCase() повертає той самий рядок, але з літерами переведеними до нижнього регістра відповідно до правил певної мови (місцевості).

- -

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

- - - -

Синтаксис

- -
str.toLocaleLowerCase()
-str.toLocaleLowerCase(locale)
-str.toLocaleLowerCase([locale, locale, ...])
-
- -

Параметри

- -
-
locale {{optional_inline}}
-
Цей параметр вказує мовний код (або перелік мовних кодів), відповідно до якого має здійснюватися перетворення регістра. Якщо вказано кілька мовних кодів (передано масив рядків), обирається найліпший з наявних. Якщо параметр не вказано, буде використано системне значення (з налаштувань оточення).
-
- -

Вертає

- -

Новий рядок із тим самим вмістом, але літерами переведеними до нижнього регістра відповідно до правил певної мови (місцевості).

- -

Винятки

- - - -

Опис

- -

Всі великі літери перетворюються на малі відповідно до правил певної мови (місцевості), а все решта лишається без змін. Позаяк клас {{jsxref("String")}} належить до незмінних типів даних, виклик toLocaleLowerCase() створює новий рядок, лишаючи оригінал без змін.

- -

Зазвичай метод toLocaleLowerCase() вертає той самий результат, що й {{jsxref("String.prototype.toLowerCase()", "toLowerCase()")}}. Втім для деяких мов, як-от турецька, правила перетворення регістра дещо відрізняються від того, що передбачено у Unicode, тож результат буде іншим.

- -

Приклади

- -

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

- -

Якщо мовний код не зазначено, використовується поточне системне значення:

- -
// виводить 'абетка'
-console.log('Абетка'.toLocaleLowerCase());
-
- -

Можна вказати лише один код чи декілька одночасно:

- -
// виводить true
-console.log('\u0130'.toLocaleLowerCase('tr') === 'i');
-// виводить fales
-console.log('\u0130'.toLocaleLowerCase('en-US') === 'i');
-
-let locales = ['tr', 'TR', 'tr-TR', 'tr-u-co-search', 'tr-x-turkish'];
-
-// виводить true
-console.log('\u0130'.toLocaleLowerCase(locales) === 'i');
-
- -

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

- - - - - - - - - - - - - -
Специфікація
{{SpecName('ESDraft', '#sec-string.prototype.tolocalelowercase', 'String.prototype.toLocaleLowerCase')}}
{{SpecName('ES Int Draft', '#sup-string.prototype.tolocalelowercase', 'String.prototype.toLocaleLowerCase')}}
- -

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/tolocaleuppercase/index.html b/files/uk/web/javascript/reference/global_objects/string/tolocaleuppercase/index.html deleted file mode 100644 index d8d2346ec8..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/tolocaleuppercase/index.html +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: String.prototype.toLocaleUpperCase() -slug: Web/JavaScript/Reference/Global_Objects/String/toLocaleUpperCase -tags: - - Internationalization - - JavaScript - - Method - - Prototype - - String - - Довідка - - Уміжнароднення -translation_of: Web/JavaScript/Reference/Global_Objects/String/toLocaleUpperCase ---- -
{{JSRef}}
- -

Метод toLocaleUpperCase() повертає той самий рядок, але з літерами переведеними до верхнього регістра відповідно до правил певної мови (місцевості).

- -

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

- - - -

Синтаксис

- -
str.toLocaleUpperCase()
-str.toLocaleUpperCase(locale)
-str.toLocaleUpperCase([locale, locale, ...])
-
- -

Параметри

- -
-
locale {{optional_inline}}
-
Цей параметр вказує мовний код (або перелік мовних кодів), відповідно до якого має здійснюватися перетворення регістра. Якщо вказано кілька мовних кодів (передано масив рядків), обирається найліпший з наявних. Якщо параметр не вказано, буде використано системне значення (з налаштувань оточення).
-
- -

Вертає

- -

Новий рядок із тим самим вмістом, але літерами переведеними до верхнього регістра відповідно до правил певної мови (місцевості).

- -

Винятки

- - - -

Опис

- -

Всі малі літери перетворюються на великі відповідно до правил певної мови (місцевості), а все решта лишається без змін. Позаяк клас {{jsxref("String")}} належить до незмінних типів даних, виклик toLocaleUpperCase() створює новий рядок, лишаючи оригінал без змін. 

- -

Зазвичай метод toLocaleUpperCase() вертає той самий результат, що й {{jsxref("String.prototype.toUpperCase()", "toUpperCase()")}}. Втім для деяких мов, як-от турецька, правила перетворення регістра дещо відрізняються від того, що передбачено у Unicode, тож результат буде іншим.

- -

Також зауважте, що перетворення не обов'язково є перетворенням символів 1:1, оскільки деякі символи можуть перетворитись на два (або навіть більше) символів при переведенні у верхній регістр. Таким чином, довжина отриманого рядка може відрізнятись від довжини вхідного рядка. Це також означає, що перетворення не є стабільним, а отже, наприклад, наступне може повернути false:
- x.toLocaleLowerCase() === x.toLocaleUpperCase().toLocaleLowerCase()

- -

Приклади

- -

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

- -

Якщо мовний код не зазначено, використовується поточне системне значення:

- -
// виводить 'АБЕТКА'
-console.log('Абетка'.toLocaleUpperCase());
-
- -

Можна вказати лише один код чи декілька одночасно:

- -
// виводить 'I'
-console.log('i\u0307'.toLocaleUpperCase('lt-LT'));
-
-let locales = ['lt', 'LT', 'lt-LT', 'lt-u-co-phonebk', 'lt-x-lietuva'];
-
-// виводить 'I'
-console.log('i\u0307'.toLocaleUpperCase(locales));
-
- -

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

- - - - - - - - - - - - - -
Специфікація
{{SpecName('ESDraft', '#sec-string.prototype.tolocaleuppercase', 'String.prototype.toLocaleUpperCase')}}
{{SpecName('ES Int Draft', '#sup-string.prototype.tolocaleuppercase', 'String.prototype.toLocaleUpperCase')}}
- -

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/tolowercase/index.html b/files/uk/web/javascript/reference/global_objects/string/tolowercase/index.html deleted file mode 100644 index ba6068d86a..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/tolowercase/index.html +++ /dev/null @@ -1,74 +0,0 @@ ---- -title: String.prototype.toLowerCase() -slug: Web/JavaScript/Reference/Global_Objects/String/toLowerCase -tags: - - JavaScript - - Method - - Prototype - - String - - Довідка -translation_of: Web/JavaScript/Reference/Global_Objects/String/toLowerCase ---- -
{{JSRef}}
- -

Метод toLowerCase() повертає той самий рядок, але з літерами переведеними до нижнього регістра.

- -

{{EmbedInteractiveExample("pages/js/string-tolowercase.html","shorter")}}

- - - -

Синтаксис

- -
str.toLowerCase()
- -

Вертає

- -

Новий рядок із тим самим вмістом, але літерами переведеними до нижнього регістра.

- -

Опис

- -

Всі великі літери перетворюються на малі, а все решта лишається без змін. Позаяк клас {{jsxref("String")}} належить до незмінних типів даних, виклик toLowerCase() створює новий рядок, лишаючи оригінал без змін.

- -

Приклади

- -

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

- -

Кожна велика літера замінюється малою, а решта лишається без змін:

- -
// виводить 'абетка'
-console.log('Абетка'.toLowerCase());
-
- -

Якщо рядок не містить жодної великої літери, то жодних змін не відбувається:

- -
// виводить 'дідькова гра'
-console.log('дідькова гра'.toLowerCase());
- -

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

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

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/tosource/index.html b/files/uk/web/javascript/reference/global_objects/string/tosource/index.html deleted file mode 100644 index 22d5a2e49e..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/tosource/index.html +++ /dev/null @@ -1,56 +0,0 @@ ---- -title: String.prototype.toSource() -slug: Web/JavaScript/Reference/Global_Objects/String/toSource -tags: - - JavaScript - - String - - Довідка - - метод - - нестандартний - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/toSource ---- -
{{JSRef}} {{obsolete_header}}
- -

Метод toSource() вертає рядкове представлення першокоду об'єкта.

- -

Синтаксис

- -
String.toSource()
-str.toSource()
-
- -

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

- -

Рядкове представлення першокоду об'єкта, який викликав метод.

- -

Опис

- -

Метод toSource() вертає наступні значення:

- -

Для вбудованого об'єкта {{jsxref("String")}} toSource() вертає наступний рядок, який вказує, що першокод недоступний:

- -
function String() {
-    [native code]
-}
-
- -

Для екземплярів {{jsxref("String")}} або рядкових літералів toSource() вертає рядок, що відображає першокод.

- -

Цей метод зазвичай JavaScript викликає внутрішньо, а не явно у коді.

- -

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

- -

Не є частиною жодного стандарту. Реалізований у JavaScript 1.3.

- -

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/tostring/index.html b/files/uk/web/javascript/reference/global_objects/string/tostring/index.html deleted file mode 100644 index 927d694e18..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/tostring/index.html +++ /dev/null @@ -1,65 +0,0 @@ ---- -title: String.prototype.toString() -slug: Web/JavaScript/Reference/Global_Objects/String/toString -tags: - - JavaScript - - Method - - Prototype - - String - - Довідка -translation_of: Web/JavaScript/Reference/Global_Objects/String/toString ---- -
{{JSRef}}
- -

Метод toString() повертає рядкове представлення вказаного об'єкта.

- -

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

- -

Синтаксис

- -
str.toString()
- -

Вертає

- -

Рядкове представлення об'єкта, який викликав метод.

- -

Опис

- -

Клас {{jsxref("String")}} має власну реалізацію метода toString(), а не успадковану {{jsxref("Object.prototype.toString()")}}. Для об'єктів класу {{jsxref("String")}}, цей метод повертає значення, що має рядковий тип даних, для якого клас {{jsxref("String")}} є обгорткою. Тобто те саме, що вертає метод {{jsxref("String.prototype.valueOf()", "valueOf()")}}.

- -

Приклади

- -

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

- -

Наступний приклад виводить до консолі рядкове значення об'єкта {{jsxref("String")}}:

- -
var x = new String('Hello world');
-
-console.log(x.toString());  // виводить 'Hello world'
-
- -

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

- - - - - - - - - - -
Specification
{{SpecName('ESDraft', '#sec-string.prototype.tostring', 'String.prototype.toString')}}
- -

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/touppercase/index.html b/files/uk/web/javascript/reference/global_objects/string/touppercase/index.html deleted file mode 100644 index 8b766dc42d..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/touppercase/index.html +++ /dev/null @@ -1,88 +0,0 @@ ---- -title: String.prototype.toUpperCase() -slug: Web/JavaScript/Reference/Global_Objects/String/toUpperCase -tags: - - JavaScript - - Method - - Prototype - - String - - Довідка -translation_of: Web/JavaScript/Reference/Global_Objects/String/toUpperCase ---- -
{{JSRef}}
- -

Метод toUpperCase() повертає той самий рядок, але з літерами переведеними до верхнього регістра (значення буде перетворене на рядок, якщо воно не є рядком).

- -

{{EmbedInteractiveExample("pages/js/string-touppercase.html","shorter")}}

- - - -

Синтаксис

- -
str.toUpperCase()
- -

Вертає

- -

Новий рядок із тим самим вмістом, але літерами переведеними до верхнього регістра.

- -

Винятки

- -
-
{{jsxref("TypeError")}}
-
Якщо викликається для {{jsxref("null")}} або {{jsxref("undefined")}}, наприклад, String.prototype.toUpperCase.call(undefined).
-
- -

Опис

- -

Всі малі літери перетворюються на великі, а все решта лишається без змін. Позаяк клас {{jsxref("String")}} належить до незмінних типів даних, виклик toUpperCase() створює новий рядок, лишаючи оригінал без змін.

- -

Приклади

- -

Базове використання

- -
console.log('Абетка'.toUpperCase()); // 'АБЕТКА'
-
- -

Перетворення нерядкових значень this на рядки

- -

Цей метод перетворить будь-яке нерядкове значення на рядок, коли ви присвоюєте його this значення, що не є рядком:

- -
const a = String.prototype.toUpperCase.call({
-  toString: function toString() {
-    return 'абвгґд';
-  }
-});
-
-const b = String.prototype.toUpperCase.call(true);
-
-// виводить 'АБВГҐД TRUE'.
-console.log(a, b);
- -

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

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

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/trim/index.html b/files/uk/web/javascript/reference/global_objects/string/trim/index.html deleted file mode 100644 index 2f31660a29..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/trim/index.html +++ /dev/null @@ -1,84 +0,0 @@ ---- -title: String.prototype.trim() -slug: Web/JavaScript/Reference/Global_Objects/String/Trim -tags: - - ECMAScript 5 - - JavaScript - - String - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/Trim ---- -
{{JSRef}}
- -

Метод trim() прибирає пробіли з обох кінців рядка. Пробілами в даному контексті є усі пробільні символи (пробіл, табуляція, нерозривний пробіл та ін.) та усі символи закінчення рядка (LF, CR, та ін.).

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

Синтаксис

- -
str.trim()
- -

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

- -

Новий рядок, що є рядком str без пробілів з обох кінців.

- -

Опис

- -

Метод trim() повертає рядок з прибраними пробілами з обох кінців. trim() не змінює значення самого рядка str.

- -

Приклади

- -

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

- -

Наступний приклад виводить рядок з малих літер 'ква':

- -
var orig = '   ква  ';
-console.log(orig.trim()); // 'ква'
-
-// Ще приклад, коли .trim() прибирає пробіли лише з одного боку.
-
-var orig = 'ква    ';
-console.log(orig.trim()); // 'ква'
-
- -

Поліфіл

- -

Виконання наступного коду перед будь-яким іншим кодом створить метод trim(), якщо він недоступний початково.

- -
if (!String.prototype.trim) {
-  String.prototype.trim = function () {
-    return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
-  };
-}
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/trimend/index.html b/files/uk/web/javascript/reference/global_objects/string/trimend/index.html deleted file mode 100644 index 2344e2e7bb..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/trimend/index.html +++ /dev/null @@ -1,80 +0,0 @@ ---- -title: String.prototype.trimEnd() -slug: Web/JavaScript/Reference/Global_Objects/String/trimEnd -tags: - - JavaScript - - String - - Довідка - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/trimEnd ---- -
{{JSRef}}
- -

Метод trimEnd() прибирає пробіли з кінця рядка. trimRight() є псевдонімом цього методу.

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

Синтаксис

- -
str.trimEnd();
-str.trimRight();
- -

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

- -

Новий рядок, який відображає початковий рядок без пробілів з (правого) кінця.

- -

Опис

- -

Методи trimEnd() / trimRight() повертають рядок з прибраними пробілами з правого кінця. trimEnd() чи trimRight() не змінюють значення самого рядка.

- -

Псевдонім

- -

Для сумісності з такими функціями як {{jsxref("String.prototype.padEnd")}}, стандартним ім'ям методу є trimEnd. Однак, з причин веб-сумісності trimRight залишається в якості псевдоніму trimEnd. В деяких рушіях це означає:

- -
String.prototype.trimRight.name === "trimEnd";
- -

Приклади

- -

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

- -

Наступний приклад виводить рядок з малих літер '   ква':

- -
var str = '   ква  ';
-
-console.log(str.length); // 8
-
-str = str.trimEnd();
-console.log(str.length); // 6
-console.log(str);        // '   ква'
-
- -

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

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

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

- - - -

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

- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/trimstart/index.html b/files/uk/web/javascript/reference/global_objects/string/trimstart/index.html deleted file mode 100644 index 03a3dc0ffc..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/trimstart/index.html +++ /dev/null @@ -1,115 +0,0 @@ ---- -title: String.prototype.trimStart() -slug: Web/JavaScript/Reference/Global_Objects/String/trimStart -tags: - - JavaScript - - String - - метод - - рядок -translation_of: Web/JavaScript/Reference/Global_Objects/String/trimStart ---- -
{{JSRef}}
- -

Метод trimStart() видаляє пробіли з початку рядка. trimLeft() є псевдонімом цього методу.

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

Синтаксис

- -
str.trimStart();
-str.trimLeft();
- -

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

- -

Новий рядок, який відображає початковий рядок без пробілів на початку (з лівого кінця).

- -

Опис

- -

Методи trimStart() / trimLeft() повертають рядок з прибраними пробілами з лівого кінця. trimLeft() чи trimStart() не змінюють значення самого рядка.

- -

Псевдонім

- -

Для сумісності з такими функціями, як {{jsxref("String.prototype.padStart")}}, стандартним ім'ям методу є trimStart. Однак, з причин веб-сумісності trimLeft залишається в якості псевдоніму trimStart. В деяких рушіях це означає:

- -
String.prototype.trimLeft.name === "trimStart";
- -

Приклади

- -

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

- -

Наступний приклад виводить рядок з малих літер 'ква  ':

- -
var str = '   ква  ';
-
-console.log(str.length); // 8
-
-str = str.trimStart();
-console.log(str.length); // 5
-console.log(str);        // 'ква  '
-
- -

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

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

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

- - - -

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

- -

Поліфіл

- -
//https://github.com/FabioVergani/js-Polyfill_String-trimStart
-
-(function(w){
-    var String=w.String, Proto=String.prototype;
-
-    (function(o,p){
-        if(p in o?o[p]?false:true:true){
-            var r=/^\s+/;
-            o[p]=o.trimLeft||function(){
-                return this.replace(r,'')
-            }
-        }
-    })(Proto,'trimStart');
-
-})(window);
-
-
-/*
-ES6:
-(w=>{
-    const String=w.String, Proto=String.prototype;
-
-    ((o,p)=>{
-        if(p in o?o[p]?false:true:true){
-            const r=/^\s+/;
-            o[p]=o.trimLeft||function(){
-                return this.replace(r,'')
-            }
-        }
-    })(Proto,'trimStart');
-
-})(window);
-*/
- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/string/valueof/index.html b/files/uk/web/javascript/reference/global_objects/string/valueof/index.html deleted file mode 100644 index a4956328d0..0000000000 --- a/files/uk/web/javascript/reference/global_objects/string/valueof/index.html +++ /dev/null @@ -1,64 +0,0 @@ ---- -title: String.prototype.valueOf() -slug: Web/JavaScript/Reference/Global_Objects/String/valueOf -tags: - - JavaScript - - Method - - Prototype - - String - - Довідка -translation_of: Web/JavaScript/Reference/Global_Objects/String/valueOf ---- -
{{JSRef}}
- -

Метод valueOf() повертає {{glossary("Primitive", "просту величину")}}, що є значенням об'єкта {{jsxref("String")}}.

- -

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

- -

Синтаксис

- -
str.valueOf()
- -

Вертає

- -

Рядок (величину, яка належить до простого типу даних {{jsxref("string")}}), що є значенням цього об'єкта {{jsxref("String")}}.

- -

Опис

- -

Метод valueOf() класу {{jsxref("String")}} повертає значення, що має рядковий тип даних, для якого клас {{jsxref("String")}} є обгорткою. Це значення тотожне до {{jsxref("String.prototype.toString()")}}.

- -

Цей метод зазвичай викликається всередині рушія JavaScript, а не в явний спосіб у коді.

- -

Приклади

- -

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

- -
var str = new String('Hello, world');
-console.log(str.valueOf());  // виводить 'Hello, world'
-
- -

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

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

Підтримка веб-переглядачами

- - - -

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

- -

Див. також

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