⊗jsPmFNOIP 250 of 505 menu

Išorinių ir vidinių funkcijų parametrai JavaScript

Padarykime taip, kad ir išorinė funkcija, ir vidinė priimtų parametrus:

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

Perduokime išorinės funkcijos parametrą į vidinės funkcijos iškvietimą:

function test(num) { function func(localNum) { console.log(localNum); // išves 1 } func(num); //!! perduodame parametrą } test(1); // perduodame parametrą skaičių

Pasirodo, kad vidinėje funkcijoje bus prieinamas kintamasis num kaip išorinis kintamasis iš tėvinės funkcijos ir kintamasis localNum, kuris yra vidinis kintamasis vidinės funkcijos.

Abu šie kintamieji turės vienodas reikšmes:

function test(num) { function func(localNum) { console.log(num); // išves 1 console.log(localNum); // išves 1 } func(num); } test(1);

Skirtumas tarp jų bus toks: jei vidinėje funkcijoje pakeisite kintamąjį num - jis pasikeis ir išorinėje funkcijoje:

function test(num) { function func(localNum) { num = 2; // keičiame kintamąjį num } func(num); // perduodame parametrą console.log(num); // išves 2 } test(1); // perduodame parametrą skaičių

O kintamasis localNum bus lokalus. Jo pakeitimai nesukels jokių pakeitimų išorinėje funkcijoje. Be to, pats kintamasis localNum nebus matomas išorėje nuo vidinės funkcijos:

function test(num) { function func(localNum) { localNum = 2; // keičiame kintamąjį num } func(num); // perduodame parametrą } test(1); // perduodame parametrą skaičių

Nustatykite, nepaleisdami kodo, kas bus išvesta į konsolę:

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

Nustatykite, nepaleisdami kodo, kas bus išvesta į konsolę:

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

Nustatykite, nepaleisdami kodo, kas bus išvesta į konsolę:

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

Nustatykite, nepaleisdami kodo, kas bus išvesta į konsolę:

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

Nustatykite, nepaleisdami kodo, kas bus išvesta į konsolę:

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

Nustatykite, nepaleisdami kodo, kas bus išvesta į konsolę:

function test(num) { function func(localNum) { num = 2; } func(num); console.log(num); } test(1);
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti