JAVA Programming/JDBC

[javascript] 모듈 분리 3가지 방법

꾸준히개발하자 2022. 4. 7. 09:02

 

 

모듈을 분리할때 사용하는 코드패턴(3가지 방법)
 1. 함수 할당 (모듈 불러온후 괄호 붙여서 실행) - moduleTest6 
 2. 인스턴스 객체 할당 (모듈 불러온후 객체의 메소드나 속성 호출)  - moduleTest7
 3. 프로토타입 객체를 할당 (모듈 불러온후 new로 객체 생성후 실행) - moduleTest8

 

 

 

 

 

1. 함수 할당 (모듈 불러온후 괄호 붙여서 실행) 

 

exports.printUser = function(){
	console.log("사용자이름은 수지입니다");
}

 

// 1. 함수할당
// printUser객체를 다이렉트로 만듬
var printUser = require("./user6").printUser;  // .printUser로 호출가능
printUser(); // 이렇게 쓰임


//var printUser = require("./user6");
//printUser.printUser();

 

 

 

2.  인스턴스 객체 할당 (모듈 불러온후 객체의 메소드나 속성 호출)

 

function User(id,name){
	this.id = id;
	this.name = name;
}

// 3
User.prototype.printUser = function(){
	console.log("아이디: " + this.id + ", 이름: " + this.name);
}


// 2
module.exports = new User("inna","유인나");

 

 

var user = require("./user7");
user.printUser();

 

3. 프로토타입 객체를 할당 (모듈 불러온후 new로 객체 생성후 실행)

 

function User(id,name){
	this.id = id;
	this.name = name;
}


//prototype.group exports 객체의 속성으로 추가 (value 값으로 집어 넣음)
User.prototype.group = {id:"suzi",name:"배수지"};

User.prototype.printUser = function(){
	console.log("아이디: " + this.id + "  , 이름: " + this.name);
	console.log("아이디: " + this.group.id + "  , 이름: " + this.group.name);
}
module.exports = User;

 

var User = require("./user8");
var user = new User("insun","정인선");

user.printUser(); // suzi , 배수지 
				  // insun , 정인선