wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

JS quiz

Total questions: 20

Worksheet time: 2hrs 40mins

Name
Class
Date
1.

Если запустить таймер, который каждые

10мс выводит текущее время с точностью до секунд. И потом переключиться на другую вкладку, то таймер будет выводить данные со следующей приблизительной

периодичностью:


Пример функции для проверки:

setInterval(() => { var d = new Date(); console.log(d.getHours(), d.getMinutes(), d.getSeconds()); }, 10)

a)

Каждый тик процессора

b)

Каждые 500мс

c)

Каждые 10мс

d)

Каждую секунду

2.

Какое из сравнений истинно?

a)

0.2 + 0.1 === 0.3

b)

0.1 + 0.02 === 0.12

c)

0.01 + 0.02 === 0.03

d)

0.01 + 0.2 === 0.21

3.

Какую последовательность вы увидите в консоли?


function t() { console.log(1);

setTimeout(() => console.log(3));

Promise.resolve(2).then(d=>console.log(d));

console.log(4); return 5;} t()

a)

1 4 2 5 3 (+)

b)

5 1 4 2 3

c)

1 3 2 4 5

d)

1 4 5 2 3 (+)

e)

1 3 4 2 5

4.

Что будет выведено в консоль?


function t(a,b,c) {console.log(a,b,c,arguments)} t.bind({}, 1, 2)(3, 2, 1)

a)

3 2 1 [1 2 3 2 1]

b)

3 2 1 [3 2 1]

c)

1 2 3 [1 2 3 2 1]

d)

1 2 3 [3 2 1]

5.

Какой будет результат выполнения следующей инструкции?


(new Date("2019-03-11T00:00:00Z")).toString()

a)

Mon Mar 11 2019 02:00:00 GMT

b)

Mon Mar 11 2019 02:00:00 GMT+0200 (Eastern European Standard Time)

c)

Mon Mar 11 2019 00:00:00 GMT

d)

Sun Mar 10 2019 22:00:00 GMT-0200 (Eastern European Standard Time)

6.

Какое действие выбросит ошибку?


const object = { you: "frozen" };

const frozen = Object.freeze(object);

a)

delete frozen.you;

b)

frozen.me = "frozen";

c)

frozen = object;

d)

frozen.you = "not frozen";

7.

Какой будет результат выполнения следующей инструкции?


[1, 2, 3].fill(4, -3, -2);

a)

[4, 2, 3]

b)

[4, 4, 4]

c)

[1, 2, 3]

d)

[1, 2, 4]

8.

Чему будет равен `arr`?


var arr = Array(3).fill({})

arr[0].hi = "hi";

a)

[{}, {}, {}]

b)

[{ hi: "hi" }, { hi: "hi" }, { hi: "hi" }]

c)

[{ hi: "hi" }, { hi: undefined }, { hi: undefined }]

d)

[{ hi: "hi" }, {}, {}]

9.

В чем разница между Promise и Observable?

a)

Observable нельзя отменить, а Promise будет выполняться пока не закончится цепочка then

b)

Observable можно использовать с async/await, а Promise-ы можно запустить параллельно

c)

Ни в чем, но Observable лучше

d)

Promise выполняется только один раз и его нельзя отменить

10.

Чем будет равно `a`?


var a = [1,2,3,4,5]; for (var i=0; i < a.length; i++){ a.pop(); }

a)

[1]

b)

[1, 2, 3]

c)

[1, 2]

d)

[]

11.

Что такое DoD?

a)

Department of Defence

b)

Declaration of Documentation

c)

Definition of Done

d)

Definition of Deliverable

12.

Что будет выведено в консоль?


const obj = { [Symbol('a')] : 1, b: 2, c: 3 };

Object.defineProperty(obj, 'c', {enumerable:false});

console.log(Object.keys(obj));

a)

["a", "b", "c"]

b)

["b"]

c)

[Symbol("a"), "b", "c"]

d)

["b", "c"]

13.

Что будет отображаться в консоли?


var item = { value: 1 };

console.log(item);

item.value = null;

a)

{ value: null} в "закрытом" состоянии, и { value: 1 } в "открытом"

b)

{ value: 1 }

c)

{ value: 1 } в "закрытом" состоянии, и { value: null } в "открытом"

d)

{ value: null }

14.

Как получить число из строки?


var s = "90.23 kg"

a)

s.replace(/\D/g, '')

b)

parseFloat(s)

c)

parseInt(s, 2)

d)

s.substr(0, 5)

15.

Как получить число из строки?


var s = "My weight is 90.23 kg"

a)

parseFloat(s.replace(/^\d./g, ''))

b)

parseFloat(s.replace(/[^\d.]/g,''))

c)

parseFloat(s.replace(/\D/g, ''))

d)

parseFloat(s)

16.

Как удалить элемент из середины массива?


var a = [1, 2, 3, 4, 5];

a)

a.pop(2)

b)

a.splice(2,1)

c)

delete a[2]

d)

a.slice(2,3)

17.

Чему будет равен title?


let [, , , title=4] = "Java is != JavaScript".split(" ");

a)

"!="

b)

""

c)

"4"

d)

"JavaScript"

18.

Что нужно сделать, чтобы была возможность пройти по всем строкам файла с помощью "for (let line of file)"

a)

Обернуть file в Observable

b)

Реализовать обычный метод next, который вместо return использует yield

c)

Реализовать метод [Symbol.iterator], который возвращает функцию next

d)

Реализовать методы [Symbol.iterator] и next

19.

Следующий код выведет в консоль цифру «3» три раза, что нужно сделать для того что бы в консоли были цифры 0, 1, 2.


for (var i = 0; i < 3; i++) { setTimeout(function() { console.log(i); }, 1000); }

a)

Обернуть таймер в само-вызываемую функцию без аргументов

b)

Заменить `var` на `let`

c)

Заменить function на arrow-function

d)

Заменить `var` на ` const`

20.

Что будет в результате?


var girl = { name:"Natasha", birthday : { date : 1, month : 'April', } };

var boy = { ...girl } ;

boy.name = 'Nazar';

boy.birthday.date = 31 ;

a)

У объектов будет разная дата рождения, но одинаковое имя

b)

У объектов будет разные дата рождения и имя

c)

У объектов будет одинаковые дата рождения и имя

d)

У объектов будет разное имя, но одинаковая дата рождения