JavaScript-те функция түрін қалай тексеруге болады

Төмендегі тапсырмаларда сізге берілген функцияның Function Declaration немесе Function Expression екенін анықтау қажет болады.

Қарапайым жағдайларда бұл көзбен жасау қиын емес. Бірақ сіздің жауабыңыз дұрыс екенін қалай тексеруге болады? Function Declaration мен Function Expression арасындағы айырмашылықты пайдаланыңыз: біріншісі оны анықтаудан жоғары шақырылуы мүмкін, ал екіншісі - мүмкін емес.

Бізде келесі функция бар делік:

javascriptlet test = function() {
  console.log('!');
}

Осы функцияны оны анықтаудан бұрын шақырайық:

javascripttest(); // консольде қате шығарады, демек Function Expression

let test = function() {
  console.log('!');
}

Міне, тағы бір мысал:

javascriptfunc(); // '!' шығарады, демек Function Declaration

function func() {
  console.log('!');
}

Функциямыздың алдына плюс қояйық:

javascriptfunc(); // консольде қате шығарады, демек Function Expression

+function func() {
  console.log('!');
}

Жоғарыдағы функция Function Expression болғандықтан және ол ешбір айнымалыға тағайындалмағандықтан, оны ешқалай шақыру мүмкін емес, себебі func аты бойынша ол қолжетімсіз болады.

Задание 1

Берілген функцияның Function Declaration немесе Function Expression екенін анықтаңыз:

javascriptlet test = function func() {
  console.log('!');
}
Задание 2

Берілген функцияның Function Declaration немесе Function Expression екенін анықтаңыз:

javascriptconsole.log(
  function func() {
    console.log('!');
  }
);
Задание 3

Берілген функцияның Function Declaration немесе Function Expression екенін анықтаңыз:

javascript+function func() {
  console.log('!');
}
Задание 4

Берілген функцияның Function Declaration немесе Function Expression екенін анықтаңыз:

javascriptfunction func() {
  console.log('!');
}