Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion modules/25-strings/30-encoding/ru/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ g o o d
- JavaScript по умолчанию использует Unicode для строк.
- Нужно уметь диагностировать проблемы. Например, если видите «кракозябры», это почти наверняка ошибка кодировки.

В JavaScript можно получить символ по его числовому коду с помощью `String.fromCharCode()`:
В JavaScript можно получить символ по его числовому коду с помощью `String.fromCharCode()`. Это встроенная функция с длинным составным именем — используйте её по образцу из примера; подробнее о функциях и таких именах поговорим в следующих модулях.

```javascript
console.log(String.fromCharCode(63)); // => ?
Expand Down
9 changes: 1 addition & 8 deletions modules/30-variables/18-variable-concatenation/ru/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,18 +59,11 @@ const age = 42;
console.log('Age: ' + age); // => Age: 42
```

Это удобно, но иногда приводит к неожиданностям, поэтому при желании число можно превратить в строку явно, с помощью функции `String()`:

```javascript
const age = 42;
console.log('Age: ' + String(age)); // => Age: 42
```

То же самое касается переменных с результатами вычислений:

```javascript
const price = 50 * 1.25 * 6.91; // => 431.875
console.log('Price in yuans: ' + price); // => Price in yuans: 431.875
```

Функция `String()` превращает любое значение (число, результат вычисления, булево и так далее) в строку. Подробнее про функции мы поговорим в будущих уроках.
Существует и явное преобразование числа в строку с помощью `String()` — разберём его в уроке про приведение типов.
4 changes: 3 additions & 1 deletion modules/31-advanced-strings/30-symbols/ru/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,13 @@ console.log(length(firstName)); // => 9
console.log(firstName[length(firstName) - 1]); // => r
```

Строка `import` в начале файла подключает учебную функцию `length()` из библиотеки — её нужно просто скопировать как есть. Как устроены импорты, разберём в уроках про модули.

Если изменится длина строки, то последний символ тоже сдвинется, и придётся снова вычислять его индекс.

## Выход за границы строки

В отличие от некоторых языков, в JavaScript обращение к несуществующему индексу не вызывает ошибку — возвращается специальное значение `undefined`:
В отличие от некоторых языков, в JavaScript обращение к несуществующему индексу не вызывает ошибку — возвращается специальное значение `undefined`. Это «ничего нет» в мире JavaScript; подробно разберём его в модуле про типы данных.

```javascript
console.log(firstName[9]); // => undefined
Expand Down
13 changes: 3 additions & 10 deletions modules/31-advanced-strings/70-slices/ru/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ const year = value.slice(6, 10);
console.log(year); // => 2034
```

Запись «значение, точка, имя» — это вызов метода; что такое методы, разберём в уроке про объекты, пока достаточно использовать `.slice()` по образцу.

Вызов `value.slice(6, 10)` берёт символы с индекса 6 по 9 включительно. Формат:

```text
Expand Down Expand Up @@ -88,16 +90,7 @@ console.log(value.slice(start, end)); // => exle

## Чего нет у slice()

В некоторых языках (например, в Python) у среза есть третий параметр — шаг, и им можно, например, взять каждый второй символ или развернуть строку. У метода `slice()` шага нет. Поэтому такие задачи в JavaScript решают иначе:

- развернуть строку можно так:

```javascript
const value = 'Hexlet';
console.log(value.split('').reverse().join('')); // => telxeH
```

- взять каждый второй символ — с помощью цикла (к циклам мы вернёмся позже).
В некоторых языках (например, в Python) у среза есть третий параметр — шаг, и им можно, например, взять каждый второй символ или развернуть строку. У метода `slice()` шага нет. Подобные задачи в JavaScript решают с помощью циклов и других инструментов, к которым мы вернёмся позже.

Существует и похожий метод `substring()`. Он работает почти как `slice()`, но не понимает отрицательные индексы (трактует их как `0`), поэтому для извлечения «хвоста» строки удобнее `slice()`.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
У некоторых функций есть **необязательные параметры**. Это значит, что для них заранее задано значение по умолчанию, и при вызове такой параметр можно не указывать.

Рассмотрим метод `toFixed()`, который округляет число до заданного количества знаков после запятой и возвращает строку:
Рассмотрим метод `toFixed()`, который округляет число до заданного количества знаков после запятой. `toFixed()` — метод, то есть функция, прикреплённая к значению и вызываемая через точку; подробно методы разберём в уроке про объекты.

```javascript
const result = (10.25).toFixed(1); // => '10.3'
```

Обратите внимание на кавычки в результате — `toFixed()` возвращает **строку**, а не число, поэтому использовать её в дальнейших вычислениях напрямую нельзя.

Мы передали ему одно значение — точность округления (1 знак после запятой). Но этот параметр необязателен. Если его не указать, используется значение по умолчанию `0` — округление до целого:

```javascript
Expand Down
Loading