2020/8/13 JavaScript

JavaScriptで作成したデータをダウンロードする

コード

使用側

download('test.txt', 'text/plain', 'test');

本体

function download(filename, type, data) {
  var blob = new Blob([data], { type: type });
  var elem = window.document.createElement('a');
  elem.href = window.URL.createObjectURL(blob);
  elem.download = filename;
  document.body.appendChild(elem);
  elem.click();
  document.body.removeChild(elem);
}

解説

一時的にアンカー要素を作成しデータを紐付ける。
それを自動でクリックをすることによりファイルをダウンロードする。

Blob

createObjectURL

<a>