Blob(Binary Large Object)
JavaScrpt에서 Blob(Binary Large Object)은 이미지, 사운드, 비디오와 같은 멀티미디어 데이터를 다룰 때 사용한다.
보통 데이터의 크기(Byte) 및 MIME 타입을 알아내거나, 데이터 송수신을 위한 작은 Blob 객체로 나누는 등의 작업에 사용한다.
Blob 생성
const newBlob = new Blob(array, options);
* array
Blob 생성자의 첫번째 인수로 ArrayBuffer, ArrayBufferView, Blob(file), DomString 객체 또는 이러한 객체가 혼합된 Array를 사용할 수 있습니다.
* options
옵션으로는 type 과 endings 를 설정할 수 있다.
type : 데이터의 MIME 타입을 설정하며, 기본값은 "" 입니다.
endings : \n 을 포함하는 문자열 처리를 "transparent" 와 "native" 로 지정할 수 있으며,
기본값은 "transparent" 입니다.
Methods
Blob 객체에서 사용할 수 있는 slice 메소드는 지정된 바이트 범위의 데이터를 포함하는 새로운 Blob 객체를 만드는데 사용된다.
10MB 이상 사이즈가 큰 Blob 객체를 작게 조각내어 사용할 때 유용하다.
const blob = new Blob();
blob.slice(start, end, type);
start : 시작 범위(Byte, Number)
end : 종료 범위(Byte, Number)
type : 새로운 Blob 객체의 MIME 타입을 지정