2017-04-24 1 views
1

私はメモを追加するたびに1ずつ増えます。ドキュメントの準備が整うと、カウントと同じ数のdivを作成してノートを表示します。むしろ必要な3以上(notecountが2の場合)21のdivを作成する整数は数値として計算されますが、数値ではない(NaN)として出力されますか?

for (var i = 1; i < noteCount + 1; i++) { 

結果:

var noteCount = parseInt(localStorage.getItem("noteCount")); 

さもないと、この行:

は、しかし、私はこのように、このカウントを解析する必要があります。

これは何かのためにカウントを使用しようとしているので問題ですが、コンソールで出力すると「NaN」と表示されます。

方法はありますか?

編集:私は、カウントを解析していない場合、それは0として正しく保存し、1、2など

+4

'localStorage'は文字列のみを格納します。 '' parseInt'(ベース、通常は '10')の第2引数がオプションではないことにも注意してください。 –

+0

上記のコメントに記されているように、どのように 'NaN'になるかを示す必要があります。あなたは常にlocalStorageから文字列を取得します。 – adeneo

+0

localStorage.setItem( "noteCount"、noteCount); – Xander

答えて

1
これにあなたの行を変更

for (var i = 1; i < +localStorage.noteCount + 1; i++) { 

それからちょうど数を取得すること。あなたはもう最初の行でparseIntを必要としません。(他に何かを使っていない限り)

0

次のように試してみてください、1と

乗算は、それがANとして扱われることを保証します整数。

for (var i = 1; i < (noteCount * 1) + 1; i++) { 

}