코딩을 공부하다보면 수많은 코드들에서 Import, export가 정말 많이 나온다. 이것들이 무엇이고 어떻게 활용할 수 있는지 정리해보자
Import
한 마디로 가져온다는 거다. 무엇을? export 한 것을.
Export
한 마디로 내보낸다는 거다. 무엇을? 내가 내보내고 싶은 것을.
코드로 간단하게 보자
//Math.js
export default function add(a, b) {
return a + b;
}
Math.js에서 내가 add라는 함수를 다른 곳에서 사용하고 싶을 때 이렇게 export를 사용하면 된다. 여기서 default가 붙어 있는데 이것은 이 파일에서 기본으로 export하고 싶은 값을 사용하고 싶을 때 사용한다. export default는 파일 당 하나의 값만 보낼 수 있다.
자 그러면 이 내보낸 것을 다른 파일에서 써야겠지?
//main.js
import sum from './math.js';
console.log(sum(4, 5)); // 9
export한 값을 Import를 사용해서 가져와서 사용하면 된다.
export function add(a, b) {
return a + b;
}
export function subtract(a, b) {
return a - b;
}
Export는 여러개 할 수 있다.
import { add, subtract } from './math.js';
console.log(add(10, 5)); // 15
console.log(subtract(10, 5)); // 5
Import도 중괄호를 활용해서 여러 개를 한 번에 받을 수 있다.
만약 이름을 바꾸고 싶다면??
import { add as plus, subtract as minus } from './math.js';
console.log(plus(10, 5)); // 15
console.log(minus(10, 5)); // 5
이런 식으로 바꾸면 된다.
또 Import를 활용해서 모든 내보낸 값을 한 번에 가져오는 방법도 있다.
import * as math from './math.js';
console.log(math.add(10, 5)); // 15
console.log(math.subtract(10, 5)); // 5
모든 값을 가져와서 math라고 이름을 붙인디 객체를 사용하듯이 math.함수( ) 이런 식으로 활용이 가능하다.
React를 공부하다보면
import React from 'react';
export default function Button({ label }) {
return <button>{label}</button>;
}
import React from 'react';
import Button from './components/Button';
function App() {
return <Button label="Click me!" />;
}
export default App;
이런 식의 코드를 정말 많이 보게 된다. React 뿐만 아니라 Java, Spring 등 많이 언어와 프레임워크에서도 그냥 숨쉬듯 볼 수 있다.
이렇게 파일을 모듈화하면 코드가 더 깔끔해지고 유지보수가 쉬워짐으로 그냥 무조건 필수적으로 쓰고 알고 있어야한다.
'IT 지식' 카테고리의 다른 글
명령형 프로그래밍?? 선언형 프로그래밍??이 뭘까? (0) | 2025.04.03 |
---|