parseInt()およびparseFloatは()、番号()、ブール()、文字列()の変換中のjs

文字列値JS三つの主要の転送方法

 

伝達関数、弱JS変数の型変換の使用をキャストします。

 

 

1.変換関数:

 

JS提供のparseInt()およびparseFloatは()は、2つの変換関数。浮動小数点値に変換する整数への以前の値、。正しく実行するために、これらの2つの機能、これらのメソッドの文字列型のみを呼び出し、戻り、他のタイプのためには、NaN(非数)です。

 

数字の前の文字列の値であるか否かを決定する際に、のparseInt()およびparseFloatは()は慎重に文字列を分析します。

 

parseInt()メソッド最初のチェック文字位置0は、有効な番号であるか否かが判定され、ない、方法がNaNを返した場合、他の操作を実行し続けません。しかし、文字の位置は1、同じテストで文字を見ていきます有効な数値は、ある場合。それが非アクティブキャラクターフィギュアに達するまで、このプロセスは、前にデジタルに文字列を変換します。この時点で、のparseInt()を続けています。

 

私たちは整数に文字列「1234blue」をしたい場合たとえば、その後のparseInt()は1234を返し、それは文字Bとして検出されると、検出プロセスが停止します。

 

数値リテラル文字列が正しくデジタルに変換し、その文字列「0xAが」が正しくデジタル10に変換されて収容されています。

 

しかし、文字列「22.5」が整数の場合と同様に、小数点以下は無効な文字があり、22に変換されます。

 

次のようにいくつかの例は以下のとおりです。

 

JSコード
  1. parseInt("1234blue");   //戻り1234   
  2. parseInt("0xAが");   // 10を返します。   
  3. parseInt("22.5");   // 22を返します。   
  4. parseInt("ブルー")。   // NaNを返します  

 

parseInt()メソッドもグループモードは、2進数、8進数、16進数、バイナリ文字列、または他の任意の整数に変換することができます。

 

グループがそのように16進数の値を解決するために、第二のパラメータのparseInt()メソッドで指定され、以下の通りのparseInt()メソッドが呼び出されます。

JSコード
  1. parseInt("AF"、16);   // 175を返します。   


もちろん、2進数、8進数、10進数または偶数(デフォルトモード)は、メソッド)(これのparseIntを呼び出すことができます。

 

JSコード
  1. parseInt("10"、2);   //戻り2   
  2. parseInt("10"、8)。   //戻り8   
  3. parseInt("10"、10);   // 10を返します。   


誤っ進値を得ないように、小数は、ベース10の0、そして最高の使用をリード含まれている場合。例えば:

 

JSコード
  1. parseInt("010");   //戻り8   
  2. parseInt("010"、8)。   //戻り8   
  3. parseInt("010"、10);   // 10を返します。   


このコードでは、コード列の2行は、「010」は、分析数となっています。8進数値として文字列にコードの最初の行、及び、第2ライン(宣言基数8)解決方法。コードの最後の行は、最後の10に等しいベース10、したがってiNum3宣言する。

 

parseInt()メソッドと同様の処理parseFloatは()メソッドは、あなたが最初の非アクティブなキャラクター、そしてデジタルへの変換前の文字列が見つかるまで、それぞれの文字は、位置0から始まり表示します。

 

しかし、この方法のために、小数点の最初の発生は有効な文字です。小数点以下がある場合、第二小数点が無効とされ、小数点の前に文字列のparseFloatは()メソッドは、デジタルに変換されます。これは、文字列「22.34.5」は22.34に解決されることを意味します。


使用parseFloatは()メソッドは、別の差がかなり進数または16進数を使用するよりも、文字列が10進浮動小数点形式で表現されなければならないことです。

 

この方法は、先頭の0を無視するので、進数0908は、908のように解釈されます。進数0xAがために、この方法は、フロートので、NaNを返し、xは有効な文字ではありません。

 

さらに、parseFloatは()もグループモード。

 

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

JSコード
  1. parseFloatは"1234blue");   // 1234.0を返します。   
  2. parseFloatは("0xAが");   // NaNを返します   
  3. parseFloatは"22.5");   // 22.5を返します。   
  4. parseFloatは"22.34.5");   // 22.34を返します。   
  5. parseFloatは"0908");   // 908を返します。   
  6. parseFloatは("ブルー")。   // NaNを返します  

 

 

 

2.キャスト

 

使用も(型キャスト)プロセスの型変換値をキャストすることができます。使用キャストは、それは別のタイプであっても、特定の値にアクセスすることができます。


ECMAScriptのは、キャストの3種類で使用することができ、次のとおりです。


ブール(値) -ブールに与えられた値、 
数(値) -デジタル(整数のいずれかまたは浮動小数点)に与えられた値、 
文字列(値) -指定された値文字列に。


これらの三つの機能の1の変換値は、直接値に変換元の値からの翻訳のために、新たな価値を創造します。これは、予期しない結果になります。

 

値が(これは次のセクションで説明されている)である少なくとも一つの文字列、または0以外のオブジェクトに変換すると、ブール()関数は真を返します。値が空の文字列、番号0、未定義、またはnullの場合は、falseを返します。

 

コードセグメントは、次のブール型キャストをテストするために使用することができます。

 

JSコード
  1. ブール("");   //偽-空の文字列   
  2. ブール("こんにちは");   //真-非空の文字列   
  3. ブール(100);   //真-ゼロ以外の数値   
  4. ブール(NULL);   //偽-ヌル   
  5. ブール(0);   //偽-ゼロ   
  6. ブール(新しいオブジェクト());   //真-オブジェクト  

数()は、値全体ではなく部分的な値を変換することを除いて、のparseInt()およびparseFloatは()メソッド同様の処理により鋳造されます。

 

覚えておいてのparseInt()およびparseFloatは()メソッドは、最初の無効な文字の前に文字列を変換するので、「4.5.6」に変換されます「4.5。」

 

文字列全体をデジタル値に変換することができないので、番号()でキャストは、「4.5.6」は、NaNを返します。

 

文字列値を完全に変換することができる場合決意がparseFloatは()メソッドが呼び出されるのparseInt()メソッドであると、番号()を呼び出します。

 

次の表は、状況が異なる値()メソッドは、どうなるの数を呼び出す示しています。

 

結果を使用してください

JSコード
  1. 番号(偽)0   
  2. 番号(真)1   
  3. 番号(未定義)はNaN   
  4. 数(ヌル)0   
  5. 番号(  "5.5")5.5   
  6. 番号(  "56")56   
  7. 番号(  "5.6.7")はNaN   
  8. 番号(新しいオブジェクト())はNaN   
  9. 番号(100)100    

それは文字列に任意の値を変えることができるので、最終的なキャスト法文字列()は、最も簡単です。

 

このキャストを実行するには、単にパラメータ()メソッドとして渡されたのtoString値を呼び出し、それはそう、偽変換するには、「偽」、「真」に変換された真の、「1」に変換され、ように。

 

文字列に強制し、エラーを出さずにnullまたは未定義のキャスト文字列の値を生成することができるのtoString()メソッドのみの違いを呼び出します。

 

JSコード
  1. VaRのS1 =文字列(NULL)。   //"ヌル"   
  2. だっoNull =    NULL;   
  3. VAR S2 = oNull.toString()。   //動作しません、エラーが発生  

 

 

 

3.弱い型付けされた変数変換JSの使用

 

小さな例を与える、見て、あなたが理解するだろう。

JSコード
  1. <スクリプト>   
  2.     STR =だった  '012345';   
  3.     ここで、x = 0 STR。   
  4.      X = X * 1。   
  5. </ SCRIPT>  

JSの実施例は、文字列型デジタル変換を達成するために、弱いタイプ特性のみ演算を利用するが、この方法は推奨されません。

おすすめ

転載: www.cnblogs.com/qhantime/p/11324115.html