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);