⊗jsPmMCPP 499 of 505 menu

Truyền tham số vào module thông qua closures trong JavaScript

Một phương pháp hay là không nên "hardcode" các giá trị vào bên trong module, mà nên truyền chúng dưới dạng tham số của chính module đó (tức là tham số của hàm được gọi ngay lập tức):

;(function(arg1, arg2) { // các tham số được đưa vào biến })(1, 2); // truyền một số tham số

Hãy xem xét một ví dụ. Giả sử chúng ta có một thẻ div chứa số và một nút bấm:

<div id="div">3</div> <button id="btn">click me</button>

Giả sử chúng ta cũng có một module nào đó:

;(function() { let div = document.querySelector('#div'); let btn = document.querySelector('#btn'); function func(num) { return num * num; } btn.addEventListener('click', function() { div.textContent = func(div.textContent); }); })();

Như bạn thấy, bộ chọn (selector) của các phần tử chúng ta đã bị "hardcode" cứng trong mã module. Một giải pháp tốt hơn là truyền chúng dưới dạng tham số cho module - bằng cách này, chúng ta có thể dễ dàng thay đổi chúng sau này. Hãy sửa lại module của chúng ta:

;(function(selector1, selector2) { let div = document.querySelector(selector1); let btn = document.querySelector(selector2); function func(num) { return num * num; } btn.addEventListener('click', function() { div.textContent = func(div.textContent); }); })('#div', '#btn');

Cho một nút bấm và ba ô nhập liệu, dùng để nhập các số. Khi nhấn vào nút, hãy in ra console tổng của các số đã nhập. Hãy triển khai bài toán này bằng cách sử dụng một module.

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