regexp renovations

This commit is contained in:
Ilya Kantor 2015-03-19 17:20:12 +03:00
parent b2f6df9d45
commit bf85f46cf9
24 changed files with 311 additions and 132 deletions

View file

@ -7,7 +7,6 @@
```js
//+ run
function unique(arr) {
var obj = {};
var result = [];
nextInput:
@ -52,7 +51,7 @@ alert( unique(strings) ); // кришна, харе, 8-()
# Решение с объектом (быстрое)
Наилучшая техника для выбора уникальных строк -- использование вспомогательного объекта. Ведь название свойства в объекте, с одной стороны -- строка, а с другой -- всегда уникально. Повторная запись в свойство с тем же именем перезапишет его.
Наилучшая техника для выбора уникальных строк -- использование вспомогательного объекта `obj`. Ведь название свойства в объекте, с одной стороны -- строка, а с другой -- всегда уникально. Повторная запись в свойство с тем же именем перезапишет его.
Например, если `"харе"` попало в объект один раз (`obj["харе"] = true`), то второе такое же присваивание ничего не изменит.

View file

@ -99,10 +99,12 @@ alert( arr[1] ); // undefined
<dl>
<dt>`arr.splice(index[, deleteCount, elem1, ..., elemN])`</dt>
<dd>Удалить `deleteCount` элементов, начиная с номера `index`, а затем вставить `elem1, ..., elemN` на их место.</dd>
<dd>Удалить `deleteCount` элементов, начиная с номера `index`, а затем вставить `elem1, ..., elemN` на их место. Возвращает массив из удалённых элементов.</dd>
</dl>
Посмотрим примеры.
Этот метод проще всего понять, рассмотрев примеры.
Начнём с удаления:
```js
//+ run
@ -115,20 +117,7 @@ arr.splice(1, 1); // начиная с позиции 1, удалить 1 эле
alert( arr ); // осталось ["Я", "JavaScript"]
```
Ниже продемонстрировано, как использовать `splice` для удаления одного элемента. Следующие за удаленным элементы сдвигаются, чтобы заполнить его место.
```js
//+ run
var arr = ["Я", "изучаю", "JavaScript"];
*!*
arr.splice(0, 1); // удалить 1 элемент, начиная с позиции 0
*/!*
alert( arr[0] ); // "изучаю" стал первым элементом
```
Следующий пример показывает, как *заменять элементы*:
В следующем примере мы удалим 3 элемента и вставим другие на их место:
```js
//+ run
@ -140,7 +129,7 @@ arr.splice(0, 3, "Мы", "изучаем")
alert( arr ) // теперь [*!*"Мы", "изучаем"*/!*, "JavaScript"]
```
Метод `splice` возвращает массив из удаленных элементов:
Здесь видно, что `splice` возвращает массив из удаленных элементов:
```js
//+ run