JavaScript-тегі жаһандық айнымалылар мен функция параметрлері
Бізде параметр ретінде сан қабылдайтын функция болсын:
function func(localNum) {
console.log(localNum);
}
Функцияның сыртында num айнымалысы болсын:
function func(localNum) {
console.log(localNum);
}
let num = 1; // сыртқы жаһандық айнымалы
Функциямызды шақырайық, оған num айнымалысын параметр ретінде беріп:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num); // функцияны параметрмен шақырамыз, 1 шығарады
Функция ішінде localNum айнымалысы (функция параметрі) де, num айнымалысы (сыртқы айнымалы ретінде) де қолжетімді болады:
function func(localNum) {
console.log(num); // 1 шығарады
console.log(localNum); // 1 шығарады
}
let num = 1;
func(num);
localNum айнымалысының өзі функцияның жергілікті айнымалысы болады және оған сыртынан қолжетімді болмайды:
function func(localNum) {
}
let num = 1;
func(num); // функцияны параметрмен шақырамыз
console.log(localNum); // қате береді
localNum айнымалысы жергілікті болғандықтан, оған іштей енгізілген ешқандай өзгерістер сыртта ештеңені өзгертпейді:
function func(localNum) {
localNum = 2; // сыртта ештеңені өзгертпейді
}
let num = 1;
func(num);
Егер іштей num айнымалысын (жаһандық) өзгертсек, онда өзгерістер сыртта да пайда болады:
function func(localNum) {
num = 2;
}
let num = 1;
func(num);
console.log(num); // 2 шығарады
Алайда, егер функция ішінде num айнымалысын let арқылы жарияласақ, онда біз сыртқы айнымалыға ешқандай әсер етпейтін жергілікті num айнымалысын жасаймыз:
function func(localNum) {
let num = 2; // let арқылы жариялаймыз
}
let num = 1;
func(num);
console.log(num); // 1 шығарады - ештеңе өзгерген жоқ
Кодты іске қоспай-ақ, консольге не шығарылатынын анықтаңыз:
function func(localNum) {
console.log(localNum);
}
func(1);
Кодты іске қоспай-ақ, консольге не шығарылатынын анықтаңыз:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num);
Кодты іске қоспай-ақ, консольге не шығарылатынын анықтаңыз:
function func(localNum) {
console.log(localNum);
}
let num = 1;
func(num);
num = 2;
Кодты іске қоспай-ақ, консольге не шығарылатынын анықтаңыз:
let num = 1;
function func(localNum) {
console.log(localNum);
}
num = 2;
func(num);
Кодты іске қоспай-ақ, консольге не шығарылатынын анықтаңыз:
function func(localNum) {
localNum = 2;
}
let num = 1;
func(num);
console.log(num);
Кодты іске қоспай-ақ, консольге не шығарылатынын анықтаңыз:
function func(localNum) {
num = 2;
}
let num = 1;
func(num);
console.log(num);
Кодты іске қоспай-ақ, консольге не шығарылатынын анықтаңыз:
function func(localNum) {
let num = 2;
}
let num = 1;
func(num);
console.log(num);