JavaScript 패턴 중 즉시실행함수를 이용한 모듈패턴에 대해서 알아봅니다.
(아래 소스에서 사용된 export, import에 대해서는 여기를 참고하세요.)
1. 모듈 생성
쉬운 예시로 모듈 내에 Object형 데이터를 관리하는 함수들을 간단히 정의했습니다.
참조하는 소스에서 사용할 모듈 내 함수는 반드시 "return" 블록안에 선언되야 합니다.
export var Module = (function(){ let data = {}; let Init = function() { console.log("[Model] :: Init ..."); } let SetData = function(key, value) { data = data ?? {}; data[key] = value; } let GetData = function() { return data; } return { Init : Init , SetData : SetData , GetData : GetData } })();
2. 사용 방법
정의한 모듈을 Import 하여 아래와 같이 호출합니다.
import { Module } from "./module/test-module.js"; { Module.Init(); Module.SetData('NAME', 'KIM'); console.log(Module.GetData()); }
0 댓글