ホームページ > 記事 > ウェブフロントエンド > JavaScriptの型変換方法と注意すべき点のまとめ(非常に網羅的)_JavaScriptスキル
1. 型変換方法と注意すべき問題:
1.ブール型への変換:
(1) 2 つの NOT 演算 (!):
を使用します!! 5 ==> true
(2) は、Boolean コンストラクターを使用します:
new Boolean(5) = = > true
値がブール型 false に変換されました:
0, 0、-0、NaN、"" (空の文字列)、未定義、null
上記の値を除き、他の値は以降 true、特に言及する必要があるのは :"0",new Object(),function(){}
2. を文字列型に変換:
(1 ) に空の文字列 "":123
"" = " 123 "
(2) 文字列コンストラクターを使用します: new String( 123) = "123".
特別な注意が必要な変換: 0 ==> "0"
-0 ==> "0"
-Infinity ==>"-Infinity"
Infinity ==>" Infinity"
NaN ==> "NaN"
未定義 ==> "未定義"
null ==> "null "
新しい Object() ==> "[オブジェクト オブジェクト]"
function(){} ==> "function(){}"
3. は数値型に変換されます:
(1) 正の値を取ります ( )、 ゼロを減算します ( -0)、 に 1 を掛けて (*1)、1 で割った (/ 1)、 は負です (-、これは反対の値になります)
"123" = 123
. true = 1
(2) コンストラクター Number();new Number("123") = 123
特別な注意が必要ないくつかの変換: ""
(空の文字列) ==> 0"010" ==> 10
"0x10"(16
ベース) ==> 16 "-010" ==> -10
"-0x10" ==> NaN
未定義 ==> NaN
null ==> 0
true = => 1
false ==> 0
新しいオブジェクト() ==> NaN
新しい関数(){} ==> NaN
2. 暗黙的な型変換: (1)
バイナリ加算演算 ( ): 2 つの場合、オペランドは String 型です。2 つのオペランドは String 型に変換されてから追加されます。 🎜>2 つのオペランドに文字列型がない場合、操作を実行する前に 2 つのオペランドは数値型に変換されます。
例:
"123" 123 = "123123";
123 123 = 246
true true = 2
true 未定義 = NaN (未定義 は数値 NaN、 に変換されるため、すべての結果は NaN)
真の null = 1 (数値に変換された null は 0)
"123 " null = "123null" (文字列を含む文字列は文字列加算に変換されます)
"123" 未定義 = "123unknown" (未定義 も適用されます)
1 2 "123" = "3123" (1 2 が最初です)数値計算)
(2)二項減算、乗算、除算 (-*/):数値型のみに - * / 演算があるため、演算を実行する前に 2 つのオペランドは数値型に変換されます。
"123"-123 = 0
(3)1 元正 ( )、負演算子 (-):正の値または負の値を取ることは数値演算であるため、演算を実行する前にオペランドは数値型に変換されます。
"123" = 123
-"123" = -123
"123e" = NaN
"123f" = NaN
"123e-2" = 1.23
(4)単項非(!)演算子:非演算子は Convert を演算する必要があります数値をブール型に変換します。
!"123" = false
!!"123" = true
!123 = false
!!123 = true
(5) 論理演算子 (&&) および (||):
は && または || の両側で判定され、Boolean 型に変換されて判定されます、
しかし、テスト中に面白いことを発見しました。
&& 演算子: 項目が false の場合、式は false、 を返します。 >すべての項目が false ではない場合、式は右端の項目の元の値を返します。
例:
123 && 23 && 45 は 45、 私たちが想像したものではなく true。
がある場合、 123 && 23 == true その場合、false となるはずです。
if(123 && 23) は trueそれは 23 をブール型に変換するはずです。 ||
演算子:
対 || || 両方が一致する場合、 ではない最初の値が返されます。 false、 最後の値 false (型変換前の値) を返します。 例:
123 || 23 Return
123 、想像上の true の代わりに。false || null は
null、 を返します。想像上のfalseの代わりに。
3. 型変換関数
1.parseFloat 浮動小数点数に変換します:
文字解析関数は、数値ではない文字が見つかるまで各文字を取得します。 value , は、取得した値 を返します。
特別な必要があるものがいくつかあります注意:
""(空の文字列) ==> NaN
"123e-2" == > 1.23 ( 科学技術計算手法は認識できる)
"010" ==> 10 (8基本系は認識できない)
"0x10"==> 0 (16ベースが認識されません)
"-010 " ==> -10
null、未定義、true、false、new Object(),function(){} ==> NaN
2.parseInt符号付き整数に変換 :
は parseFloat に似ていますが、小数点以下は四捨五入されます (四捨五入ではなく完全に破棄されることに注意してください。Math.floor と同じ方法で処理されます), は 8 進数と 16基本表現:
123e-2 == > 1"123e-2" ==> 123
"010" == > 8
"0x10" ==> 16
"-010" == > -8
"-0x10" ==> -16
null,未定義, true,false,new Object(),function(){},-Infinity Infinity NaN ==> NaN
3.3 つの丸め関数 の違い:
(1) Math.ceil(): " 天井"、とても鮮やかですね?パラメータ以上の最小の整数を取得するだけです。 8.7 == > 9
-8.7==> -8
(2)Math.floor(): "Floor"、 はパラメーター以下の最小の整数を受け取ります。
8.7 ==> 8
-8.7 ==> -9
(3)Math.round(): "Round "Take an integer.