[Bug] JS download 文本中#後面的字都不見了

目錄
發生情況
今天想讓使用者下載一個文本檔,
var mytext = encodeURI( "111#1111" );
var a = document.body.appendChild(document.createElement("a"));
a.download = "My_output.html";
a.href = "data:text/html," + mytext;
a.click();
但下載下來的內容是1111
#後面(包含#)都不見了
解決
看來大原因是解碼問題,細部為甚麼後面會消失就不知道了
encodeURI 改成 encodeURIComponent
var mytext = encodeURIComponent( "1111#1111" );
var a = document.body.appendChild(document.createElement("a"));
a.download = "My_output.html";
a.href = "data:text/html," + mytext;
a.click();
參考資料:
https://stackoverflow.com/questions/31789651/hashtag-within-string-breaks-javascript