Тест по основам программирования на JavaScript

Тема 3: Функции и области видимости в JavaScript

2

Что делает стрелочная функция () => x * 2

Умножает x на 2 и возвращает

Создаёт массив

Ничего

Какие области видимости существуют в JS?

Глобальная

Локальная (функция)

Блочная (let/const)

Статическая

Что выведет console.log(typeof (()=>{}))

"function"

"object"

"undefined"

Что вернёт вызов функции g() если let g = () => 10

10

undefined

Ошибка

Что делает apply()

Выполняет функцию с this и массивом аргументов

Создаёт копию функции

Ничего

Что выведет console.log(f.name); если function f(){}

"f"

undefined

"function"

Упорядочи этапы замыкания

Функция объявляется

Внутри создаются локальные переменные

Возвращается функция из внешней функции

Функция использует переменные внешней функции

Какие способы объявления функций существуют?

Function Declaration

Function Expression

Arrow Function

Class Function

Упорядочь действия при рекурсивной функции

Вызов функции

Выполнение тела функции

Вызов самой себя

Возврат значения

Что делает метод call()

Выполняет функцию с указанным this

Создаёт новую функцию

Возвращает массив

Какие переменные относятся к глобальной области видимости?

var объявленные вне функций

const объявленные вне функций

let внутри функции

переменные внутри блока

Что из перечисленного — корректные способы вызвать функцию?

f()

f.call(this)

f.apply(this)

f{}

Что делает bind()

Возвращает новую функцию

Изменяет оригинальную функцию

Ничего

Что делает оператор arguments внутри функции

Позволяет обратиться к аргументам функции

Возвращает длину массива

Создаёт новый массив

Что выведет код:

javascript
function f(){ return 5; } console.log(f());

5

undefined

f

Что делает функция высшего порядка?

Принимает функцию как аргумент

Возвращает функцию

Изменяет глобальный объект

Ничего

Установи соответствия: тип функции → характеристика

Function Declaration

Поднимается вверх области видимости

Function Expression

Доступна после объявления

Arrow Function

Не имеет своего this

Anonymous Function

Не имеет имени

Что выведет console.log((function(){})())

undefined

function

Error

Какие функции имеют блочную область видимости для переменных?

Стрелочные функции с let/const

Функции внутри блока с let/const

Function Declaration с var

Глобальные функции

Упорядочи этапы объявления и вызова функции

Объявление функции

Вызов функции

Выполнение тела функции

Возврат значения

Какая область видимости имеет переменная внутри функции без var/let/const

Глобальная

Локальная

Блочная

Что делает оператор return внутри функции?

Завершает функцию и возвращает значение

Прерывает цикл

Ничего

Что вернёт console.log((x)=>x+1)(5)

6

5

undefined

Что вернёт console.log(typeof f) если let f = function() {}

"function"

"object"

"undefined"