LocalStorageアイテムに整数値を割り当てると
localStorage.setItem('a',1)
そのタイプを確認してください
typeof(localStorage.a)
"string"
stringを返します。使用するためにintに型キャストできます
parseInt(localStorage.a)
私の質問は、型キャストせずにJavascriptオブジェクトに対して実行できるように、整数値をlocalStorage内に格納することは可能ですか?
a={};
a.number=1;
typeof(a.number)
"number"
私の質問は、型キャストせずにJavascriptオブジェクトに対して実行できるように、整数値をlocalStorage内に格納することは可能ですか?
番号。
ストレージオブジェクトは、オブジェクトに似た単純なKey-Valueストアですが、ページの読み込み中はそのまま残ります。キーは文字列または整数にすることができますが、値は常に文字列です。 [ソース]
実際に、構文解析が型キャストと同じではないことに同意すれば、できます。
let val = 42;
localStorage.answer = JSON.stringify(val);
let saved = JSON.parse(localStorage.answer);
console.log( saved === val ); // true
フィドル 過剰に保護されたスタックスニペットはlocalStorageを許可しないため。
簡単にするために、とにかく常にlocalStorageに保存しているものをJSONに文字列化する必要があります。これにより、保存/取得しているものについて考える必要がなくなり、"[object Object]"
が保存されないようになります。