Skip to content

Commit dfd9454

Browse files
feyclaude
andcommitted
fix(theory): add on-the-spot notes for not-yet-introduced constructs (T05)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent 1ac33d5 commit dfd9454

5 files changed

Lines changed: 11 additions & 21 deletions

File tree

modules/25-strings/30-encoding/ru/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ g o o d
7676
- JavaScript по умолчанию использует Unicode для строк.
7777
- Нужно уметь диагностировать проблемы. Например, если видите «кракозябры», это почти наверняка ошибка кодировки.
7878

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

8181
```javascript
8282
console.log(String.fromCharCode(63)); // => ?

modules/30-variables/18-variable-concatenation/ru/README.md

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -59,18 +59,11 @@ const age = 42;
5959
console.log('Age: ' + age); // => Age: 42
6060
```
6161

62-
Это удобно, но иногда приводит к неожиданностям, поэтому при желании число можно превратить в строку явно, с помощью функции `String()`:
63-
64-
```javascript
65-
const age = 42;
66-
console.log('Age: ' + String(age)); // => Age: 42
67-
```
68-
6962
То же самое касается переменных с результатами вычислений:
7063

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

76-
Функция `String()` превращает любое значение (число, результат вычисления, булево и так далее) в строку. Подробнее про функции мы поговорим в будущих уроках.
69+
Существует и явное преобразование числа в строку с помощью `String()` — разберём его в уроке про приведение типов.

modules/31-advanced-strings/30-symbols/ru/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,11 +28,13 @@ console.log(length(firstName)); // => 9
2828
console.log(firstName[length(firstName) - 1]); // => r
2929
```
3030

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

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

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

3739
```javascript
3840
console.log(firstName[9]); // => undefined

modules/31-advanced-strings/70-slices/ru/README.md

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ const year = value.slice(6, 10);
1919
console.log(year); // => 2034
2020
```
2121

22+
Запись «значение, точка, имя» — это вызов метода; что такое методы, разберём в уроке про объекты, пока достаточно использовать `.slice()` по образцу.
23+
2224
Вызов `value.slice(6, 10)` берёт символы с индекса 6 по 9 включительно. Формат:
2325

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

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

91-
В некоторых языках (например, в Python) у среза есть третий параметр — шаг, и им можно, например, взять каждый второй символ или развернуть строку. У метода `slice()` шага нет. Поэтому такие задачи в JavaScript решают иначе:
92-
93-
- развернуть строку можно так:
94-
95-
```javascript
96-
const value = 'Hexlet';
97-
console.log(value.split('').reverse().join('')); // => telxeH
98-
```
99-
100-
- взять каждый второй символ — с помощью цикла (к циклам мы вернёмся позже).
93+
В некоторых языках (например, в Python) у среза есть третий параметр — шаг, и им можно, например, взять каждый второй символ или развернуть строку. У метода `slice()` шага нет. Подобные задачи в JavaScript решают с помощью циклов и других инструментов, к которым мы вернёмся позже.
10194

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

modules/35-calling-functions/135-calling-functions-default-params/ru/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
У некоторых функций есть **необязательные параметры**. Это значит, что для них заранее задано значение по умолчанию, и при вызове такой параметр можно не указывать.
22

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

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

9+
Обратите внимание на кавычки в результате — `toFixed()` возвращает **строку**, а не число, поэтому использовать её в дальнейших вычислениях напрямую нельзя.
10+
911
Мы передали ему одно значение — точность округления (1 знак после запятой). Но этот параметр необязателен. Если его не указать, используется значение по умолчанию `0` — округление до целого:
1012

1113
```javascript

0 commit comments

Comments
 (0)