配列をlocalStorageに保存するにはどうすればいいですか? [重複] 質問する

配列をlocalStorageに保存するにはどうすればいいですか? [重複] 質問する

localStorage が必要ない場合、コードは次のようになります。

var names=new Array(); 
names[0]=prompt("New member name?");

これは動作します。ただし、この変数を localStorage に保存する必要があり、非常に扱いにくいことがわかっています。私は次のことを試しました:

var localStorage[names] = new Array();
localStorage.names[0] = prompt("New member name?");

どこが間違っているのでしょうか?

ベストアンサー1

localStorage文字列のみをサポートします。JSON.stringify()および を使用してくださいJSON.parse()

var names = [];
names[0] = prompt("New member name?");
localStorage.setItem("names", JSON.stringify(names));

//...
var storedNames = JSON.parse(localStorage.getItem("names"));

直接アクセスを使用してアイテムを設定/取得することもできます。

localStorage.names = JSON.stringify(names);
var storedNames = JSON.parse(localStorage.names);

おすすめ記事