Skip to content

Commit e7592fe

Browse files
Merge pull request #136 from keslo/patch-1
1-js/06-advanced-functions/08-settimeout-setinterval
2 parents 271b96b + 27da97c commit e7592fe

7 files changed

Lines changed: 172 additions & 171 deletions

File tree

1-js/06-advanced-functions/08-settimeout-setinterval/1-output-numbers-100ms/solution.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11

2-
Using `setInterval`:
2+
Используем `setInterval`:
33

44
```js run
55
function printNumbers(from, to) {
@@ -14,11 +14,11 @@ function printNumbers(from, to) {
1414
}, 1000);
1515
}
1616

17-
// usage:
17+
// использование:
1818
printNumbers(5, 10);
1919
```
2020

21-
Using recursive `setTimeout`:
21+
Используем рекурсивный `setTimeout`:
2222

2323

2424
```js run
@@ -34,9 +34,9 @@ function printNumbers(from, to) {
3434
}, 1000);
3535
}
3636

37-
// usage:
37+
// использование:
3838
printNumbers(5, 10);
3939
```
4040

41-
Note that in both solutions, there is an initial delay before the first output. Sometimes we need to add a line to make the first output immediately, that's easy to do.
41+
Заметим, что в обоих решениях есть начальная задержка перед первым выводом. Она составляет одну секунду (1000мс). Если мы хотим, чтобы функция запускалась сразу же, то надо добавить такой запуск вручную на отдельной строке, вот так:
4242

1-js/06-advanced-functions/08-settimeout-setinterval/1-output-numbers-100ms/task.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@ importance: 5
22

33
---
44

5-
# Output every second
5+
# Вывод каждую секунду
66

7-
Write a function `printNumbers(from, to)` that outputs a number every second, starting from `from` and ending with `to`.
7+
Напишите функцию `printNumbers(from, to)`, которая выводит число каждую секунду, начиная от `from` и заканчивая `to`.
88

9-
Make two variants of the solution.
9+
Сделайте два варианта решения.
1010

11-
1. Using `setInterval`.
12-
2. Using recursive `setTimeout`.
11+
1. Используя `setInterval`.
12+
2. Используя рекурсивный `setTimeout`.
1313

1-js/06-advanced-functions/08-settimeout-setinterval/3-rewrite-settimeout/solution.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ function count() {
1414
}
1515

1616
if (i == 1000000000) {
17-
alert("Done in " + (Date.now() - start) + 'ms');
17+
alert("Выполнено в " + (Date.now() - start) + 'ms');
1818
clearInterval(timer);
1919
}
2020

1-js/06-advanced-functions/08-settimeout-setinterval/3-rewrite-settimeout/task.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ importance: 4
22

33
---
44

5-
# Rewrite setTimeout with setInterval
5+
# Перепишите setTimeout на setInterval
66

7-
Here's the function that uses nested `setTimeout` to split a job into pieces.
7+
Эта функция использует вложенный `setTimeout` для разделения задачи на части.
88

9-
Rewrite it to `setInterval`:
9+
Перепишите ее, используя `setInterval`:
1010

1111
```js run
1212
let i = 0;
@@ -16,12 +16,12 @@ let start = Date.now();
1616
function count() {
1717

1818
if (i == 1000000000) {
19-
alert("Done in " + (Date.now() - start) + 'ms');
19+
alert("Выполнено в " + (Date.now() - start) + 'ms');
2020
} else {
2121
setTimeout(count);
2222
}
2323

24-
// a piece of heavy job
24+
// часть тяжелой задачи
2525
for(let j = 0; j < 1000000; j++) {
2626
i++;
2727
}

1-js/06-advanced-functions/08-settimeout-setinterval/4-settimeout-result/solution.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11

2-
Any `setTimeout` will run only after the current code has finished.
2+
Любой вызов `setTimeout` будет выполнен только после того, как текущий код завершится.
33

4-
The `i` will be the last one: `100000000`.
4+
Последним значением `i` будет: `100000000`.
55

66
```js run
77
let i = 0;
88

99
setTimeout(() => alert(i), 100); // 100000000
1010

11-
// assume that the time to execute this function is >100ms
11+
// предположим, что время выполнения этой функции >100 мс
1212
for(let j = 0; j < 100000000; j++) {
1313
i++;
1414
}

1-js/06-advanced-functions/08-settimeout-setinterval/4-settimeout-result/task.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,25 @@ importance: 5
22

33
---
44

5-
# What will setTimeout show?
5+
# Что покажет setTimeout?
66

7-
In the code below there's a `setTimeout` call scheduled, then a heavy calculation is run, that takes more than 100ms to finish.
7+
В приведенном ниже коде запланирован вызов `setTimeout`, а затем выполняется сложное вычисление, для завершения которого требуется более 100 мс.
88

9-
When will the scheduled function run?
9+
Когда будет выполнена запланированная функция?
1010

11-
1. After the loop.
12-
2. Before the loop.
13-
3. In the beginning of the loop.
11+
1. После цикла.
12+
2. Перед циклом.
13+
3. В начале цикла.
1414

1515

16-
What is `alert` going to show?
16+
Что покажет `alert`?
1717

1818
```js
1919
let i = 0;
2020

2121
setTimeout(() => alert(i), 100); // ?
2222

23-
// assume that the time to execute this function is >100ms
23+
// предположим, что время выполнения этой функции >100 мс
2424
for(let j = 0; j < 100000000; j++) {
2525
i++;
2626
}

0 commit comments

Comments
 (0)