JavaScript-те ішкі функциялар
Бізде екі санды параметр ретінде қабылдайтын және ол сандардың квадраттарының қосындысын қайтаратын функция бар делік:
function func(num1, num2) {
return num1 * num1 + num2 * num2;
}
console.log(func(2, 3)); // 13 шығарады (2 * 2 + 3 * 3 нәтижесі)
Квадраттау операциясын square
көмекші функциясына шығарайық:
function square(num) {
return num * num;
}
function func(num1, num2) {
return square(num1) + square(num2);
}
console.log(func(2, 3)); // 13 шығарады
square функциясы тек func
функциясында ғана қолданылады, ешқайда өзге
жерде қолданылмайды деп анық білеміз делік.
Бұл жағдайда оны ешкім кездейсоқ қолданбауы (өзіңіз немесе сізбен бірге жұмыс істейтін басқа бағдарламашы) ыңғайлы болар еді.
JavaScript-те нәзік шешім бар: біз
square көмекші функциясын
func функциясының ішіне орналастыра аламыз.
Бұл жағдайда біздің көмекші функция
func ішінде ғана қолжетімді болады,
ал сыртында - болмайды.
Мұны істейік:
function func(num1, num2) {
function square(num) {
return num * num;
}
return square(num1) + square(num2);
}
console.log(func(2, 3)); // 13 шығарады
square функциясын func
функциясының сыртынан шақыру әрекеті
қатеге әкеледі:
function func(num1, num2) {
function square(num) {
return num * num;
}
return square(num1) + square(num2);
}
console.log(square(2)); //!! қате шығарады
func функциясын жасаңыз, ол параметрлер ретінде
екі санды қабылдап, бірінші санның квадраты мен
екінші санның кубының қосындысын қайтарады.
Ол үшін санды квадратқа шығаратын square
көмекші функциясы мен санды текшеге шығаратын
cube көмекші функциясын жасаңыз.