How can I convert a base64 string to a blob in JavaScript?
Antek N
antek n profile pic

To convert a Base64 string to a Blob object in JavaScript, you can use theatob() andUint8Array APIs. Here's a step-by-step guide on how to achieve this: 1. Obtain the Base64 string:

1
2
3

   const base64String = 'SGVsbG8sIFdvcmxkIQ==';
   

Replace'SGVsbG8sIFdvcmxkIQ==' with the actual Base64 string you want to convert. 2. Decode the Base64 string: Use theatob() function to decode the Base64 string into a binary string.

1
2
3

   const binaryString = atob(base64String);
   

Theatob() function decodes the Base64 string into its original binary representation. 3. Create a Uint8Array from the binary string: Use theUint8Array constructor to create a typed array from the binary string.

1
2
3
4
5
6

   const arrayBuffer = new Uint8Array(binaryString.length);
   for (let i = 0; i < binaryString.length; i++) {
     arrayBuffer[i] = binaryString.charCodeAt(i);
   }
   

TheUint8Array constructor creates an array of 8-bit unsigned integers. We iterate over the binary string and store the corresponding character codes in the array. 4. Create a Blob from the Uint8Array: Use theBlob constructor to create a Blob object from the Uint8Array.

1
2
3

   const blob = new Blob([arrayBuffer]);
   

TheBlob constructor creates a Blob object that represents the binary data contained in the Uint8Array. Now, you have a Blob object representing the data from the Base64 string. By following these steps, you can convert a Base64 string to a Blob object in JavaScript. Adjust the code as needed to fit your specific use case and handle different Base64 strings.