[javascript] Jest에서 지원하는 모듈 포맷은 어떤 것들인가?
  1. CommonJS: Jest는 Node.js에서 사용되는 CommonJS 모듈 포맷을 지원합니다. require 함수를 사용하여 모듈을 가져올 수 있습니다.
const myModule = require('./myModule');
  1. ES Modules: Jest는 ECMAScript 모듈 포맷을 지원합니다. import 문을 사용하여 모듈을 가져올 수 있습니다.
import myModule from './myModule';
  1. AMD: Jest는 Asynchronous Module Definition(비동기 모듈 정의) 포맷을 지원합니다. require 함수를 사용하여 모듈을 가져올 수 있습니다.
require(['./myModule'], function(myModule) {
  // 모듈 사용
});
  1. TypeScript: Jest는 TypeScript 모듈을 지원합니다. TypeScript 코드를 작성할 때 Jest에 모듈 포맷을 알리기 위해 tsconfig.json 파일에서 "module" 옵션을 설정할 수 있습니다. 기본값은 CommonJS입니다.
{
  "compilerOptions": {
    "module": "commonjs"
  }
}

Jest는 이러한 모듈 포맷들을 자동으로 감지하고 해석하여 테스트 환경에서 모듈을 로드하기 위해 적절한 방식을 사용합니다. 따라서 프로젝트의 모듈 포맷에 맞게 Jest를 구성하면 테스트를 원할하게 수행할 수 있습니다.