Tôi biết rằng một mô-đun như thế này:Sự khác biệt giữa đóng và mô-đun là gì?
function User(){
var username, password;
function doLogin(user, pw){
username = user;
password = pw;
};
var publicAPI = {
login: doLogin
};
return publicAPI;
}
có đóng cửa bên trong của nó: doLogin
, và được ghi nhớ các giá trị của các biến username
và password
mà bên User
, điều này làm cho một "đóng cửa" . Những gì tôi không hoàn toàn hiểu là nếu bất cứ khi nào chúng tôi sử dụng một đóng cửa, chúng tôi đang sử dụng mô hình mô-đun? hoặc ngay sau khi tôi lưu các chức năng của User
trong một biến như var User = function(){...
không phải là một mô-đun ... Xin lưu ý tôi đang học js.
Mẫu mô-đun đang sử dụng bao đóng chứ không phải theo cách khác. Đóng cửa là một phần không thể thiếu của ngôn ngữ, các mô-đun chỉ là một * mẫu * nổi lên từ chúng (và có rất nhiều thứ khác bạn có thể làm với các bao đóng). – Bergi