Notice
Recent Posts
Recent Comments
Link
꾸준하게 거북이처럼
require vs import 차이 본문
node로 개발하다가 require 와 import의 차이가 궁금해서 알아보았다.
JS로 개발할 때, require나 import로 외부 라이브러리를 불러온다.
require는 NodeJS에서 사용되고 있는 CommonJS 키워드이며
import는 ES6에서 새롭게 도입된 키워드이다.
const http = require("http");
import http from "http";
위의 코드는 동일한 작업을 수행한다.
ES6가 최근에 많이 사용되고 있지만 아직까지는 import 키워드가 완전히 대체되어 사용될 수 없다고 한다.
Babel과 같은 ES6코드 변환 도구를 사용할 수 없는 경우일 시, require를 사용해야한다.
문법 차이
모듈 정의(export)
ES6
// 모듈 전체를 export, 파일내 한번만 사용가능하다.
var module = {};
export default module
// 모든 속성을 export
export *;
// 함수를 직접 export
export function moduleFunc() {};
var property = "some property";
export {property};
CommonJS
// 모듈 전체를 export
module.exports = module
// 함수를 직접 export
exports.moduleFunc = function() {}
모듈 가져오기(import)
ES6
// 모듈 전체를 import
import module
import module as myModule
// 모든 속성 import
import * as name from module
// 특정 멤버(함수 등)만 import
import {moduleFunc, moduleFunc2} from module
CommnJS
// 모듈 전체를 import
var module = require('./someModule.js')
// 특정 멤버(함수 등)만 import, 위의 module을 이용한다.
module.moduleFunc1
module.moduleFunc2
var {moduleFunc, moduleFunc2} from require('./someModule.js')
일반적으로는 import는 필요한 모듈 부분만 선택하고 로드할 수 있어서 더 선호되고 require보다 성능이 우수하고 메모리를 절약한다고 한다.
참고자료
[NODE] 📚 require ⚔️ import (CommonJs와 ES6) 차이
require vs import 자바스크립트 개발을 하다보면 require나 import 키워드를 통해 외부 라이브러리를 불러오는 코드를 자주 보게 됩니다. require는 NodeJS에서 사용되고 있는 CommonJS 키워드이고, import는..
inpa.tistory.com
'개인공부' 카테고리의 다른 글
삼성 코테시 주의할 점 (0) | 2023.04.04 |
---|---|
css - box-sizing : border box 설정하는 이유 (0) | 2022.07.03 |
css- fontawesome pug에 적용하는 법 (0) | 2022.07.03 |
CSS 스크롤 하단으로 고정하는 법 (0) | 2022.07.03 |
실시간 채팅 시스템 만들기- 공부한 개념 정리 (0) | 2022.06.26 |
Comments