任意の数、それは数です。文字列は数字のように見えます、それは数字です。他のすべて、それはNaNに行きます。
'a' => NaN
'1' => 1
1 => 1
私の知る限り、それを行うには4つの方法があります。
Number(x);
parseInt(x, 10);
parseFloat(x);
+x;
私が行ったこの簡単なテストでは、実際にはブラウザによって異なります。
http://jsperf.com/best-of-string-to-number-conversion/2
Implicit
3つのブラウザで最速とマークされていますが、コードが読みにくくなっています…だから、好きなものを選んでください!
文字列を整数に変換する簡単な方法は、次のようにビットごとの or を使用することです。
x | 0
+x
実装方法によって異なりますが、理論的には、最初に数値にキャストx
してから非常に効率的な or を実行するため、比較的高速 (少なくとも と同じくらい) である必要があります。
これを行う簡単な方法は次のとおりです。 var num = Number(str); この例では、 strは文字列を含む変数です。Google chrome 開発者ツールを開いてテストし、動作を確認してから、コンソールに移動して次のコードを貼り付けます。コメントを読んで、変換がどのように行われるかをよりよく理解してください。
// Here Im creating my variable as a string
var str = "258";
// here im printing the string variable: str
console.log ( str );
// here Im using typeof , this tells me that the variable str is the type: string
console.log ("The variable str is type: " + typeof str);
// here is where the conversion happens
// Number will take the string in the parentesis and transform it to a variable num as type: number
var num = Number(str);
console.log ("The variable num is type: " + typeof num);
最も速い方法は -0 を使用することです:
const num = "12.34" - 0;