2017-05-01 12 views
-2

入力を介してユーザーに事前定義の速度制限を入力するように指示するスピードアプリケーションを作成しようとしていますが、ローカル記憶域を使用して数値を格納しましたが、代わりに「数値」数だけ引用符を付けると、文字列となり、アプリケーションでは役に立たなくなります。直接型変換LocalStorage Stringsとして保存する

又は

limit = localStorage.getItem('limitfield'); 
var otherVar = someVar - limit; 

数値コンテキスト(除算演算)であなたの変数を使用して数値型への変換 - ここ

はJS

var limit = 20; 
var limitfield = document.getElementById('limit1') //Places limit1 field from HTML into variable 
limitfield.addEventListener('input', updateStorage); //Adds eventlistener to listen to input in limit1 field then call method 

function updateStorage(){ 
localStorage.setItem('limitfield', limitfield.value); //After obtaining the input from eventlistener store the value in variable 
    setPreference(); 
          } 

function setPreference(){ 
    limit = localStorage.getItem('limitfield'); //variable created that retrieves value 
         } 
+1

これはどのように動作するのですか。 Web Storagesストア文字列。数値が必要な場合は、常に変数の前に '+'演算子を使用してキャストするか、数値コンテキストで変数を使用するだけです。 – curveball

+0

参照してくださいhttp://stackoverflow.com/questions/33952287/is-it-possible-to-store-integer-value-in-localstorage-like-in-javascript-objects – Matey

+0

ああ、私はこれでかなり新しいです知りませんでした。あなたは変数を数値的な文脈に入れる方法を教えていただけますか?演算子の意味は? – Syystole

答えて

0

limit = +localStorage.getItem('limitfield');あります。

+0

+演算子を追加すると数値形式になります!!! ありがとうございますが、私はまだ理解していません。正確に "+"何をしていますか? – Syystole

+0

それはあなたの変数に数値的なコンテキストを強制し、変換が発生します。 – curveball

+0

ありがとう、私はこれを自分で見つけられませんでした – Syystole

関連する問題