ホームページ  >  記事  >  ウェブフロントエンド  >  jsで数値を文字列に変換する様々な方法を詳しく解説

jsで数値を文字列に変換する様々な方法を詳しく解説

韦小宝
韦小宝オリジナル
2018-03-07 13:42:351380ブラウズ

js がテキスト ボックスやその他のフォーム データを読み取るときに取得される値は string 型です。他の データ型 を使用する必要がある場合は、データ 型変換 を使用する必要があります。 js で文字列を数値に変換するさまざまな方法について説明します。

js がテキスト ボックスまたはその他のフォーム データを読み取るときに取得される値は、2 つのテキスト ボックス a と b などの文字列型であるとします。a の値が 11、b の値が 9 であるとします。その場合、.value は次のようになります。これらはすべて文字列の形式であるため、js 文字列を数値に変換する方法は、主に 3 つあります。 js変数の変換と弱い型変換の利用。

1. 変換関数: js は、parseInt() と parseFloat() の 2 つの変換関数を提供します。前者は値を

整数

に変換し、後者は値を浮動小数点数に変換します。これら 2 つの関数は、これらのメソッドが String 型で呼び出された場合にのみ正しく実行されます。他の型では NaN (Not a Number) が返されます。

いくつかの例は次のとおりです:

parseInt("1234blue"); //returns 1234
parseInt("0xA"); //returns 10
parseInt("22.5"); //returns 22
parseInt("blue"); //returns NaN
parseInt() メソッドには基底モードもあり、2 進数、8 進数、16 進数、またはその他の任意の基数の文字列を整数に変換できます。基数は parseInt() メソッドの 2 番目のパラメーターで指定します。例:

parseInt("AF", 16); //returns 175
parseInt("10", 2); //returns 2
parseInt("10", 8); //returns 8
parseInt("10", 10); //returns 10

10 進数の先頭に 0 が含まれると仮定すると、誤って 8 進数値を取得しないように、基数 10 を使用するのが最善です。例:

parseInt("010"); //returns 8
parseInt("010", 8); //returns 8
parseInt("010", 10); //returns 10
parseFloat() メソッドは parseInt() メソッドに似ています。

parseFloat() メソッドを使用する場合のもう 1 つの違いは、文字列が 10 進形式の浮動小数点数を表す必要があり、parseFloat() には基本モードがないことです。

以下は parseFloat() メソッドの使用例です:

parseFloat("1234blue"); //returns 1234.0
parseFloat("0xA"); //returns NaN
parseFloat("22.5"); //returns 22.5
parseFloat("22.34.5"); //returns 22.34
parseFloat("0908"); //returns 908
parseFloat("blue"); //returns NaN

2. 強制的な型変換


型キャストを使用して、変換された値の型を処理することもできます。特定の値が別の型であっても、キャストを使用して特定の値にアクセスします。

ECMAScript で使用できる 3 種類の強制型変換は次のとおりです:

1. Boolean(value) - 指定された値を Boolean 型に変換します。 2. Number(value) - 指定された値を数値に変換します。整数または浮動小数点数); 3. 文字列 (値) - 指定された値を文字列に変換します。

これら 3 つの関数のいずれかを使用して値を変換すると、元の値から直接変換された値を格納する新しい値が作成されます。これにより、予期せぬ結果が生じる可能性があります。

Boolean() 関数は、変換される値が文字列、ゼロ以外の数値、または少なくとも 1 つの文字を含むオブジェクトである場合に true を返します (これについては次のセクションで説明します)。値が空の文字列、数値 0、未定義、または null であると仮定すると、false が返されます。次のコード スニペットを使用して、ブール型変換をテストできます。

Boolean(""); //false – empty string
Boolean("hi"); //true – non-empty string
Boolean(100); //true – non-zero number
Boolean(null); //false - null
Boolean(0); //false - zero
Boolean(new Object()); //true – object

Number() の強制は、値の一部ではなく値全体を変換することを除いて、parseInt() および parseFloat() メソッドと似ています。例は次のとおりです:

//用  法  // 结  果
Number(false) //0
Number(true) //1
Number(undefined) //NaN
Number(null) //0
Number( "5.5 ") //5.5
Number( "56 ") //56
Number( "5.6.7 ") //NaN
Number(new Object()) //NaN
Number(100) //100

最後の強制型変換メソッド String() が最も単純です。例は次のとおりです:
var s1 = String(null); //"null"
var oNull = null;
var s2 = oNull.toString(); //won't work, causes an error


3. js 変数の弱い型変換を使用します

小さな例です。一目瞭然でしょう。

<script>
var str= &#39;012.345 &#39;;
var x = str-0;
x = x*1;
</script>

上記の例は、js の弱い型の特性を利用し、算術演算のみを実行して文字列から数値への型変換を実現していますが、この方法は推奨されませんおすすめ関連記事:

JS文字列間で16進数を相互に変換する方法

以上がjsで数値を文字列に変換する様々な方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。