回答編集履歴

1

的はずれな回答と思い、他に考えられることを追記しました。

2019/10/22 04:03

投稿

AkitoshiManabe
AkitoshiManabe

スコア5432

test CHANGED
@@ -9,3 +9,21 @@
9
9
 
10
10
 
11
11
  コードが問題ない場合、「オリジンごとに定められた保存サイズ上限」を疑うべきでしょう。
12
+
13
+
14
+
15
+ ----
16
+
17
+ 追記)サイズに関しては的はずれに感じましたので、その他に原因がないか思い起こしてみました。
18
+
19
+
20
+
21
+ localStorageは基本的に同期処理ですし、ページ間で同期を取る遅延が発生している可能性もあります。
22
+
23
+ この遅延に関してlocalStorage以降で登場した IndexedDBでは複数のタブで開いていて、いずれかのページでDB更新があると、他のタブと同期を取るAPI(コードを組む必要がありますが)もあるくらいです。
24
+
25
+
26
+
27
+ localStorage でも発生していたからこそ、IndexedDBでは同期を取るAPIが付与されたのではないでしょうか。
28
+
29
+ ブラウザの操作を少し待ってみて値が得られるかどうかをチェックし、意図したとおりの挙動なら、端末操作を敢えて待たせるように実装する方法がありそうです。