aboutsummaryrefslogtreecommitdiff
path: root/files/ru/web/javascript/reference/global_objects/string/slice
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:42:52 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:42:52 -0500
commit074785cea106179cb3305637055ab0a009ca74f2 (patch)
treee6ae371cccd642aa2b67f39752a2cdf1fd4eb040 /files/ru/web/javascript/reference/global_objects/string/slice
parentda78a9e329e272dedb2400b79a3bdeebff387d47 (diff)
downloadtranslated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.gz
translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.bz2
translated-content-074785cea106179cb3305637055ab0a009ca74f2.zip
initial commit
Diffstat (limited to 'files/ru/web/javascript/reference/global_objects/string/slice')
-rw-r--r--files/ru/web/javascript/reference/global_objects/string/slice/index.html173
1 files changed, 173 insertions, 0 deletions
diff --git a/files/ru/web/javascript/reference/global_objects/string/slice/index.html b/files/ru/web/javascript/reference/global_objects/string/slice/index.html
new file mode 100644
index 0000000000..5b6f3895c4
--- /dev/null
+++ b/files/ru/web/javascript/reference/global_objects/string/slice/index.html
@@ -0,0 +1,173 @@
+---
+title: String.prototype.slice()
+slug: Web/JavaScript/Reference/Global_Objects/String/slice
+tags:
+ - JavaScript
+ - Method
+ - Prototype
+ - Reference
+ - String
+translation_of: Web/JavaScript/Reference/Global_Objects/String/slice
+---
+<div>{{JSRef("Global_Objects", "String")}}</div>
+
+<h2 id="Summary" name="Summary">Сводка</h2>
+
+<p>Метод <strong><code>slice()</code></strong> извлекает часть строки и возвращает новую строку без изменения оригинальной строки.</p>
+
+<p>{{EmbedInteractiveExample("pages/js/string-slice.html", "taller")}}</p>
+
+<h2 id="Syntax" name="Syntax">Синтаксис</h2>
+
+<pre class="syntaxbox notranslate"><code><var>str</var>.slice(<var>beginIndex</var>[, <var>endIndex</var>])</code></pre>
+
+<h3 id="Parameters" name="Parameters">Параметры</h3>
+
+<dl>
+ <dt><em><code>beginIndex</code></em></dt>
+ <dd>Индекс, с которого начинать извлечение (нумерация начинается с нуля). Если аргумент отрицателен, то трактуется как <code><em>str</em>.length + <em>beginIndex</em></code> (например, если <em><code>beginIndex</code></em> равен <code>-3</code>, то он трактуется как <code><em>str</em>.length - 3</code>). Если <em><code>beginIndex</code></em>  не является числом при проверке {{jsxref('Number', 'Number(<var>beginIndex</var>)')}}, он трактуется как <code>0</code>.</dd>
+ <dd>Если <code><em>beginIndex</em></code> больше или равен <code><em>str</em>.length</code>, возвращается пустая строка.</dd>
+ <dt><em><code>endIndex</code></em></dt>
+ <dd>Индекс, <em>перед</em> которым заканчивать извлечение (нумерация начинается с нуля). Символ по этому индексу не будет включён.</dd>
+ <dd>Если <em><code>endIndex</code> </em>опущен или является <code>undefined</code> или больше чем <code><em>str</em>.length</code>, <code>slice()</code> извлечёт всё до конца строки. Если аргумент отрицателен, то трактуется как <code><em>str</em>.length + <em>endIndex</em></code><em> </em>(например, если <em><code>endIndex</code></em> равен <code>-3</code>, то он трактуется как <code><em>str</em>.length - 3</code>). Если аргумент не <code>undefined</code> и не является числом при проверке {{jsxref('Number', 'Number(<var>endIndex</var>)')}}, возвращается пустая строка.</dd>
+ <dd>Если <em><code>endIndex</code></em> указан и меньше <em><code>startIndex</code></em>, то возвращается пустая строка (например, <code>slice(-1, -3)</code> или <code>slice(3, 1)</code> вернут <code>""</code>).</dd>
+</dl>
+
+<h3 id="Возвращаемое_значение">Возвращаемое значение</h3>
+
+<p>Новая строка, содержащая извлеченную часть строки.</p>
+
+<h2 id="Description" name="Description">Описание</h2>
+
+<p>Метод <code>slice()</code> извлекает текст из одной строки и возвращает новую строку. Изменения текста в одной строке не влияют на другую строку.</p>
+
+<p>Метод <code>slice()</code> извлекает все символы до индекса <em><code>endIndex</code></em>, не включая сам этот индекс. Вызов <code><em>str</em>.slice(1, 4)</code> извлечёт символы со второго по четвёртый (символы под индексами <code>1</code>, <code>2</code> и <code>3</code>).</p>
+
+<p>К примеру, вызов <code>str.slice(2, -1)</code> извлечёт символы с третьего по второй с конца строки.</p>
+
+<h2 id="Examples" name="Examples">Примеры</h2>
+
+<h3 id="Example_Using_slice_to_create_a_new_string" name="Example:_Using_slice_to_create_a_new_string">Пример: использование метода <code>slice()</code> для создания новой строки</h3>
+
+<p>В следующем примере метод <code>slice()</code> используется для создания новой строки.</p>
+
+<pre class="brush: js notranslate">let str1 = 'Приближается утро.';
+let str2 = str1.slice(1, 8);
+let str3 = str1.slice(4, -2);
+let str4 = str1.slice(12);
+let str5 = str1.slice(30);
+
+console.log(str2); // ВЫВОД: риближа
+console.log(str3); // ВЫВОД: лижается утр
+console.log(str4); // ВЫВОД:  утро.
+console.log(str5); // ВЫВОД: ""
+</pre>
+
+<h3 id="Example_Using_slice_with_negative_indexes" name="Example:_Using_slice_with_negative_indexes">Пример: использование метода <code>slice()</code> с отрицательными индексами</h3>
+
+<p>В следующем примере метод <code>slice()</code> используется вместе с отрицательными индексами.</p>
+
+<pre class="brush: js notranslate">let str = 'Приближается утро.';
+str.slice(-3); // вернёт 'ро.'
+str.slice(-3, -1); // вернёт 'ро'
+str.slice(0, -1); // вернёт 'Приближается утро'
+</pre>
+
+<p>В этом примере начальным индексом считается <code>11</code>-й символ с конца строки, а конечным - <code>16</code>-й с начала.</p>
+
+<pre class="brush: js notranslate">str.slice(-11, 16); // вернет 'ается утр'</pre>
+
+<p>Здесь начальным индексом считается <code>6</code>-й символ от начала строки, а конечным - <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">7</span></font>-й с конца.</p>
+
+<pre class="brush: js notranslate">str.slice(6, -7); // вернет 'жаетс'</pre>
+
+<p>В этом примере оба индекса считаются с конца строки: <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">5</span></font>-й для начального индекса, <code>1</code>-й для конечного.</p>
+
+<pre class="brush: js notranslate">str.slice(-5, -1); // вернет 'утро'</pre>
+
+<h2 id="Specifications" name="Specifications">Спецификации</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Спецификация</th>
+ <th scope="col">Статус</th>
+ <th scope="col">Комментарии</th>
+ </tr>
+ <tr>
+ <td>ECMAScript 3-е издание.</td>
+ <td>Стандарт</td>
+ <td>Изначальное определение. Реализована в JavaScript 1.2.</td>
+ </tr>
+ <tr>
+ <td>{{SpecName('ES5.1', '#sec-15.5.4.13', 'String.prototype.slice')}}</td>
+ <td>{{Spec2('ES5.1')}}</td>
+ <td></td>
+ </tr>
+ <tr>
+ <td>{{SpecName('ES6', '#sec-string.prototype.slice', 'String.prototype.slice')}}</td>
+ <td>{{Spec2('ES6')}}</td>
+ <td></td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browser_compatibility" name="Browser_compatibility">Совместимость с браузерами</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Возможность</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari</th>
+ </tr>
+ <tr>
+ <td>Базовая поддержка</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Возможность</th>
+ <th>Android</th>
+ <th>Chrome для Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ </tr>
+ <tr>
+ <td>Базовая поддержка</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ <td>{{CompatVersionUnknown}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="See_also" name="See_also">Смотрите также</h2>
+
+<ul>
+ <li>{{jsxref("String.prototype.substr()")}}</li>
+ <li>{{jsxref("String.prototype.substring()")}}</li>
+ <li>{{jsxref("Array.prototype.slice()")}}</li>
+</ul>