aタグのdownload属性でサーバを介さずにファイルダウンロードする

この記事はHTML5 Advent calendarの16日目の記事です。

HTML5からaタグにdownloadという属性が指定可能になったようです。
この属性が指定されたaタグは、href属性の値をブラウザで開くのではなく、リンク先をファイルとしてダウンロードします。

今までcanvasで画像を生成した画像など、jsで生成したファイルをユーザに保存させるにはwindow.openにdata urlを渡して新窓で表示させ、ユーザに右クリ等で保存してもらう方法しか知らなかったのですが、
aタグのdownload属性がまさにやりたいことドンピシャだったので備忘録を残します。