1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
"use strict";
function asyncSqrt(value, callback) {
console.log('START execution with value =', value);
setTimeout(function () {
callback(value, value * value);
}, 0 | Math.random() * 100);
}
asyncSqrt(0, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
asyncSqrt(1, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
asyncSqrt(2, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
asyncSqrt(3, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
asyncSqrt(4, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
asyncSqrt(5, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
asyncSqrt(6, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
asyncSqrt(7, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
asyncSqrt(8, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
asyncSqrt(9, function (value, result) {
console.log('END execution with value =', value, 'and result =', result);
console.log('COMPLETED');
});
});
});
});
});
});
});
});
});
});