File 객체와 Blob 객체

Javascript에서 Blob(Binary Large Object)는 이미지, 사운드, 비디오와 같은 멀티미디어 데이터를 다룰 때 사용할 수 있다.

데이터의 크기(Byte) 및 MIME 타입을 알아내거나, 데이터의 송수신을 위한 작은 Blob 객체로 나누는 등의 작업에 사용한다.
File 객체도 name과 lastModifiedData 속성이 존재하는 Blob 객체이다.

MIME 타입이란 문서의 다양성을 알려주기 위한 메커니즘.
웹에서는 파일의 확장자가 의미가 없으므로
브라우저들이 리소스를 내려받았을 때,
해야할 기본 동작이 무엇인지를 결정하기 위해 대개 MIME 타입을 사용한다
MIME 타입 공식문서

Blob 생성
Blob 생성자는 새로운 Blob 객체를 반환한다. 인수로 arrayoptions를 받는다.

const newBlob = new Blob(array, options);

Blob 공식문서

인수 array에는 ArrayBuffer, ArrayBufferView,Blob(File), DOMString 객체 또는 이러한 객체가 혼합된 Array를 사용할 수 있다.
참조