C++の忘れないって記事を書いて一番自分がよくググるのでそれのjs版も作っておくか。。という事で。oFの時ほど見ない気もするのだけど。
jsonのコピー
jsの仕様では普通にコピーするとarrayとかobjectが参照渡しになるそうで(1時間ハマった)
以下一度stringにエンコ、デコードする。ただしundefindとか入るとNG。
obj = {hoge:"aaa"};
this.json = obj; //参照渡し
this.json = JSON.parse(JSON.stringify(obj)); //deep copy
json fileの保存
オブジェクトをjsonファイルに保存。れがしー。
const a = document.createElement("a");
a.href = URL.createObjectURL(
new Blob([JSON.stringify(this.json)], {
type: "application/json",
})
);
a.download = "test.json";
a.click();
json fileの保存
File System Access APIを使ってオブジェクトをjsonファイルに保存。
こっちの方が保存ダイアログとか出せるし色々便利。
忘れない。。
you