⊗jsPmFNOIP 250 of 505 menu

Tham số của hàm ngoài và hàm trong JavaScript

Hãy để cả hàm ngoài và hàm trong đều nhận tham số:

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

Hãy truyền tham số của hàm ngoài vào lời gọi của hàm trong:

function test(num) { function func(localNum) { console.log(localNum); // sẽ in ra 1 } func(num); //!! truyền tham số } test(1); // truyền một số làm tham số

Kết quả là, trong hàm trong sẽ có thể truy cập biến num như một biến bên ngoài từ hàm cha và biến localNum, là biến cục bộ của hàm trong.

Cả hai biến này sẽ có cùng giá trị:

function test(num) { function func(localNum) { console.log(num); // sẽ in ra 1 console.log(localNum); // sẽ in ra 1 } func(num); } test(1);

Sự khác biệt giữa chúng sẽ như sau: nếu trong hàm trong, chúng ta thay đổi biến num - nó cũng sẽ thay đổi trong hàm ngoài:

function test(num) { function func(localNum) { num = 2; // thay đổi biến num } func(num); // truyền tham số console.log(num); // sẽ in ra 2 } test(1); // truyền một số làm tham số

Còn biến localNum sẽ là biến cục bộ. Việc thay đổi nó sẽ không dẫn đến bất kỳ thay đổi nào trong hàm ngoài. Và bản thân biến localNum cũng sẽ không nhìn thấy bên ngoài hàm trong:

function test(num) { function func(localNum) { localNum = 2; // thay đổi biến num } func(num); // truyền tham số } test(1); // truyền một số làm tham số

Xác định, không chạy code, điều gì sẽ được in ra trong console:

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

Xác định, không chạy code, điều gì sẽ được in ra trong console:

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

Xác định, không chạy code, điều gì sẽ được in ra trong console:

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

Xác định, không chạy code, điều gì sẽ được in ra trong console:

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

Xác định, không chạy code, điều gì sẽ được in ra trong console:

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

Xác định, không chạy code, điều gì sẽ được in ra trong console:

function test(num) { function func(localNum) { num = 2; } func(num); console.log(num); } test(1);
Tiếng Việt
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ʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối