質問: 4 ``` といったやり方はできないのでしょうか。
回答: どのように `sessionStorage` で `hash` を扱っているか分からないですが、基本的に `sessionStorage` は `key`、`value` 共に `String` 型です。 > > Each Storage object provides access to a list of key/value pairs, which are sometimes called items. **Keys are strings**. Any string (including the empty string) is a valid key. **Values are similarly strings**. > > > そのため、`value` に `hash` を保存する際も `String` として保存し(`JSON.stringify()`などで)、値を取得する際に複合(`JSON.parse()`などで)しているかと思います。 そのため、直接 `sessionStorage` 内の `value` をオブジェクトとして取り扱う事はできないため、一度取り出した後に、更新し再度保存する必要があるかと思います。(以下コードのように) ``` // 保存 var data = {id01:{hoge:1, moge:2, hige:5}}; sessionStorage.setItem('id01', JSON.stringify(data)); // 取得 var str = sessionStorage.getItem('id01'); var item = JSON.parse(str); // 更新 item.moge = 4 sessionStorage.setItem('id01', JSON.stringify(item)); ```