回答編集履歴

1

コードに対するコメントを追加

2017/11/23 11:54

投稿

defghi1977
defghi1977

スコア4756

test CHANGED
@@ -15,3 +15,9 @@
15
15
  非同期処理から直接ファイル保存を行う場合, 処理に時間がかかると`a`要素の`click`メソッドがブラウザによりキャンセルされてしまうことがあります. セキュリティの観点からファイルの保存は明確にユーザーの意思によって行われた時に限るという縛りがあるからです(この部分ちょっと記憶が曖昧).
16
16
 
17
17
  なので確実性を求めるのであれば(利便性と引き換えに), CSVファイルの生成処理とCSVファイルのダウンロード処理は分けた方がよいと思います.
18
+
19
+
20
+
21
+ NOTE:
22
+
23
+ なお, `URL.createObjectURL`で生成したURLは不必要となった時点(リンクのURLを書き換えた時点)で`URL.revokeObjectURL`メソッドを使って明示的に開放してあげて下さい. さもないとメモリリークを引き起こします.