회사 동료분이 맡은 프로젝트에서 blob을 사용하여 로직을 구현 중인데 처리에 대해 고민하신다고 하셨다. 흠.. 생각해보니 나는 blob을 모르잖아..? 하는 아찔한 깨달음과 함께 blob을 공부해보기로 했다.
그럼 가보자고~!
Binary Large Object의 약자로 블랍 또는 비랍이라고도 발음한다.
이미지, 사운드, 비디오와 같은 멀티 미디어 데이터를 다룰 때 사용한다.
const newBlob = new Blob(array, options);
array : ArrayBuffer, ArrayBufferView, Blob(file), DOMString을 타입으로 가짐
option : option에는 type과 endings 속성을 가진다.
큰 blob 객체를 작게 조각내서 사용할 수 있다.
newBlob.slice(0, 3432, 'img/png');
const mergeBlob = new Blob(chunks, {type:newBlob.type});
blob 최대 용량은 OS에 따라 다르다.
아래 코드로 최대 용량을 확인할 수 있다.
var byteLength = 999999999;
var buffer = new ArrayBuffer(byteLength);
var blob = new Blob([buffer]);
// Blob의 최대 용량을 byte단위로 알 수 있다.
var blobMaxSize = blob.size;
https://heropy.blog/2019/02/28/blob/
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=magnking&logNo=220950061851
https://jw910911.tistory.com/120