Skip to content

Latest commit

 

History

History
71 lines (48 loc) · 1.23 KB

module-pattern.md

File metadata and controls

71 lines (48 loc) · 1.23 KB

module pattern

vấn đề

global var có thể được truy cập và thay đổi bởi nhiều thành phần khác, điều này làm chương trình kém bảo mật và gây ra nhiều lỗi không xác định được, hoặc xung đột tên nếu có nhiều người cũng phát triển

var myGlobal = "Look at me";
var useGlobal = function () {
console.log("I can see the global: " + myGlobal);
};
console.log("I too can see the global: " + myGlobal);

giải pháp

  1. tập hợp những thuộc tính và hàm liên quan vào trong 1 đối tượng được gọi là namespace
var myNamespace = {
    key: value,
    methode1: function () {
    }  
}
  1. Bao lại bằng hàm để tạo local scope
var myGlobal = function () {
    var mylocal

    var getLocal = function () { return myLocal }
    var setLocal = function (para) { myLocal = para }

    return {  
        getLocal:  getLocal,
        setLocal:  setLocal
    }
}

// đây chính là module pattern trong JS !

Chốt

var module = (function()
	///

	//
	return: {

	}
)()

(function()
	var module = function

	//
	return: {

	}

	window.module
)()