Тест по JavaScript — Сложный уровень
Что произойдёт при доступе к переменной, объявленной через let, до её инициализации?
- 1. undefined
- 2. ReferenceError
- 3. null
- 4. NaN
Что делает метод bind() в JavaScript?
- 1. Объединение контекста
- 2. Связывание this
- 3. Создание области видимости
- 4. Переопределение функции
Какой из механизмов реализует микрозадачи в Event Loop?
- 1. setTimeout
- 2. Promise
- 3. async/await
- 4. requestAnimationFrame
Чем опасны неиспользуемые замыкания?
- 1. Они не влияют на производительность
- 2. Могут привести к утечкам памяти
- 3. Удаляются сборщиком автоматически
- 4. Блокируют главный поток
Какой метод позволяет задать геттер и сеттер вручную?
- 1. Object.defineProperty()
- 2. Object.assign()
- 3. Object.create()
- 4. Object.freeze()
С чего начинается объявление генератора в JavaScript?
- 1. function*
- 2. yield*
- 3. gen()
- 4. async function
Что будет выполнено раньше всего?
- 1. setImmediate
- 2. requestAnimationFrame
- 3. setTimeout(..., 0)
- 4. Promise.resolve()
Какой тип коллекции позволяет использовать объекты в качестве ключей и не препятствует сборке мусора?
- 1. Object
- 2. Map
- 3. Set
- 4. WeakMap
Какое значение вернёт typeof NaN === "number"
?
- 1. false
- 2. true
- 3. undefined
- 4. Error
В чём особенность стрелочной функции?
- 1. Сохраняет контекст this
- 2. Требует ключевого слова function
- 3. Автоматически вызывается
- 4. Может использоваться как конструктор
Какой объект служит шаблоном при наследовании в JavaScript?
- 1. Constructor
- 2. Prototype
- 3. __proto__
- 4. InstanceOf
Какой из параметров НЕ используется в Object.defineProperty()?
- 1. value
- 2. writable
- 3. configurable
- 4. async
Какой метод можно использовать только внутри async-функции?
- 1. finally
- 2. then
- 3. catch
- 4. await
Какой способ создания символа НЕвалиден?
- 1. Symbol()
- 2. Symbol.for()
- 3. new Symbol()
- 4. Symbol.create()
Какое ключевое слово не поддерживается в JavaScript?
- 1. eval
- 2. with
- 3. goto
- 4. arguments
Что позволяет узнать, была ли функция вызвана через new?
- 1. class
- 2. constructor
- 3. super
- 4. new.target
Что произойдёт при попытке изменить свойство объекта, замороженного через Object.freeze()?
- 1. 0
- 2. 1
- 3. undefined
- 4. TypeError
Что делает ключевое слово throw в JavaScript?
- 1. Прерывает выполнение
- 2. Возвращает ошибку
- 3. Продолжает выполнение
- 4. Игнорирует исключения
Как получить все ключи объекта, включая символы?
- 1. Object.keys()
- 2. Object.entries()
- 3. Object.getOwnPropertyNames()
- 4. Reflect.ownKeys()
Какой встроенный объект обеспечивает безопасную работу с многопоточностью в JavaScript?
- 1. Symbol
- 2. WeakSet
- 3. BigInt
- 4. Atomics