⊗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
Мы выкарыстоўваем cookie для працы сайта, аналітыкі і персаналізацыі. Апрацоўка дадзеных адбываецца згодна Палітыкай канфідэнцыяльнасці.
прыняць усе наладзіць адхіліць