⊗jsPmFNOIP 250 of 505 menu

გარე და შიდა ფუნქციების პარამეტრები JavaScript-ში

მოდით, გავაკეთოთ ისე, რომ გარე ფუნქციაც და შიდაც მიიღებდეს პარამეტრებს:

function test(num) { function func(localNum) { console.log(localNum); } }

გარე ფუნქციის პარამეტრი გადავცეთ შიდა ფუნქციის გამოძახებას:

function test(num) { function func(localNum) { console.log(localNum); // გამოიტანს 1-ს } func(num); //!! პარამეტრს გადავცემთ } test(1); // პარამეტრად რიცხვს გადავცემთ

გამოდის, რომ შიდა ფუნქციაში იქნება ხელმისაწვდომი ცვლადი num, როგორც გარე ცვლადი მშობელი ფუნქციიდან და ცვლადი localNum, რომელიც შიდა ფუნქციის ლოკალური ცვლადია.

ამ ორ ცვლადს ექნება იგივე მნიშვნელობები:

function test(num) { function func(localNum) { console.log(num); // გამოიტანს 1-ს console.log(localNum); // გამოიტანს 1-ს } func(num); } test(1);

მათ შორის განსხვავება იქნება შემდეგში: თუ შიდა ფუნქციაში შევცვლით ცვლადს num - ის შეიცვლება გარე ფუნქციაშიც:

function test(num) { function func(localNum) { num = 2; // ვცვლით num ცვლადს } func(num); // პარამეტრს გადავცემთ console.log(num); // გამოიტანს 2-ს } test(1); // პარამეტრად რიცხვს გადავცემთ

ხოლო ცვლადი localNum იქნება ლოკალური. მისი ცვლილებები არ გამოიწვევს რაიმე ცვლილებას გარე ფუნქციაში. და თავად ცვლადი localNum არ იქნება ხილული შიდა ფუნქციის გარეთ:

function test(num) { function func(localNum) { localNum = 2; // ვცვლით num ცვლადს } func(num); // პარამეტრს გადავცემთ } test(1); // პარამეტრად რიცხვს გადავცემთ

განსაზღვრეთ, კოდის გაშლის გარეშე, რა გამოიტანს კონსოლში:

function test(num) { function func(localNum) { console.log(localNum); } func(num); } test(1);

განსაზღვრეთ, კოდის გაშლის გარეშე, რა გამოიტანს კონსოლში:

function test(num) { function func(localNum) { console.log(localNum); } func(num + 1); } test(1);

განსაზღვრეთ, კოდის გაშლის გარეშე, რა გამოიტანს კონსოლში:

function test(num) { function func(localNum) { console.log(num); } func(num + 1); } test(1);

განსაზღვრეთ, კოდის გაშლის გარეშე, რა გამოიტანს კონსოლში:

function test(num) { function func(localNum) { localNum = 2; } func(num); console.log(num); } test(1);

განსაზღვრეთ, კოდის გაშლის გარეშე, რა გამოიტანს კონსოლში:

function test(num) { function func(localNum) { localNum = 2; } func(num); console.log(localNum); } test(1);

განსაზღვრეთ, კოდის გაშლის გარეშე, რა გამოიტანს კონსოლში:

function test(num) { function func(localNum) { num = 2; } func(num); console.log(num); } test(1);
ქართული
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語Қазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ვებსაიტის მუშაობის, ანალიტიკისა და პერსონალიზაციისთვის ვიყენებთ ქუქი-ფაილებს. მონაცემთა დამუშავება ხდება Კონფიდენციალურობის პოლიტიკის შესაბამისად.
ყველას მიღება პარამეტრები უარყოფა