Using Promise with async/await

Viewed 2712

I'm starting with async/await things in TypeScript and I have few questions about it. I wrote this function to get ArrayBuffer from Blob.

async function readAsArrayBuffer(blob: Blob): Promise<ArrayBuffer> {
    return new Promise<ArrayBuffer>((resolve, reject) => {
        let reader = new FileReader();
        reader.addEventListener('load', e => resolve((<FileReader>e.target).result));
        reader.addEventListener('error', e => reject((<FileReader>e.target).error));
        reader.readAsArrayBuffer(blob);
    });
}

So...

  1. Do I really need async keyword before this function? I think, it does nothing...
  2. Should I create new FileReader in Promise executor function scope or at readAsArrayBuffer scope level? (...or it doesn't matter?)
  3. What I wrote is two functions nested in function nested in function. Am I doing something wrong? :-)
2 Answers
Related