함수를 사용하는 이유가
재활용성
과 편리함 때문 이었다.
모듈도 마찬가지이며 조금 더 큰 개념이라 할 수도 있는데,
코드를 기능에 따라 여러개의 파일로 나누는 것이다.
이를 통해 아래와 같은 효과를 얻을 수 있다.
재활용
할 수 있다.: 모듈을 로드하는 방법은 호스트 환경에 따라서 달라진다. Node.js에서는 아래와 같은 방법으로 모듈을 로드한다.
: 객체를 만들어 모듈로 내보낼 수 있다.
let Menu = {};
Menu.specialty = "Roasted Beet Burger with Mint Sauce"; // Menu의 프로퍼티
module.exports = Menu; // Menu 객체를 모듈로 내보낸다.
내보내고자 하는 객체명
: 모듈화 된 객체를 다른 파일에서 가져올 수 있다.
const Menu = require('./menu.js'); // Menu 객체를 가져올 수 있다.
function placeOrder() {
console.log('My order is: ' + Menu.specialty);
}
placeOrder();
const
새로운 파일에서 사용할 객체명
= require
('가져올 객체의 주소 및 파일명
'): 내보내기는 아래와 같이 정의할 수 있다.
let 객체명 = {};
export default 객체명;
: 가져오기는 아래와 같이 정의할 수 있다.
import 객체명 from './주소'
: 자바스크립트의 대표적인 호스트 환경인 웹브라우저에서 로직을 모듈화하는 방법에 대해서 알아보자.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
</head>
<body>
<script>
function welcome(){
return 'Hello world'
}
alert(welcome());
</script>
</body>
</html>
<sctipt> </sctipt>
사이에 자바스크립트 코드를 넣어 분리시킨다.function welcome(){
return 'Hello world';
}
greeting.js
만들었다. 자바스크립트 파일은 확장자로 js를 사용한다.<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<script src="greeting.js"></script>
</head>
<body>
<script>
alert(welcome());
</script>
</body>
</html>
<script src="greeting.js"></script>
로 js를 불러오기만 하면 된다.<head></head>
사이에 넣도록 한다.