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