ホームページ >ウェブフロントエンド >フロントエンドQ&A >JavaScript の 2 種類のデータ型変換とは何ですか?
JavaScript には、2 種類のデータ型変換があります: 1. 主に JavaScript の組み込み関数を使用してデータを変換する明示的な型変換 (強制型変換とも呼ばれます)、2. 暗黙的な型変換。コンピューティング環境により、値の型が自動的に変換されます。
このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
JavaScript は、型の弱い動的型付け言語であり、変数には型の制限がなく、いつでも任意の値を割り当てることができます。
var x = y ? 1 : 'a';
上記のコードでは、変数 x が数値であるか文字列であるかは、別の変数 y の値によって決まります。 y が true の場合、x は数値になり、y が false の場合、x は文字列になります。これは、コンパイル時には x の型を知ることができず、実行時まで待たなければならないことを意味します。
変数のデータ型は不明ですが、さまざまな演算子にはデータ型の要件があります。演算子の型が予期された型と一致しないことが判明した場合、演算子は自動的に型を変換します。たとえば、減算演算子は、左右の演算子が数値であることを想定しており、そうでない場合は自動的に数値に変換します。
'4' - '3' // 1
上記のコードでは、2つの文字列を減算しても結果値1が得られますが、これはJavaScriptが自動的に演算子を数値に変換しているためです。
JavaScript におけるデータ型変換
js におけるデータ型変換は、一般的に強制型変換と暗黙的型変換の 2 種類に分けられます ( js の弱い変数の型変換を使用します)。
明示的な型変換は、主に JavaScript の組み込み関数を使用して行われます。
暗黙的な型変換とは、コンピューティング環境に応じて JavaScript が自動的に変換することを意味します。値のタイプ。
js でオブジェクトをプリミティブ値に変換したい場合は、toPrimitive() 内部関数を呼び出す必要があります。どのように機能するのでしょうか?
f35d6e602fd7d0f0edfa6f7d103c1b57 toPrimitive(input,preferredType)
input は入力値、preferredType は変換されることが期待される型、String にすることができます または Number、または渡されません。
1) 変換された型が数値の場合、次の手順が実行されます:
1. 如果input是原始值,直接返回这个值; 2. 否则,如果input是对象,调用input.valueOf(),如果结果是原始值,返回结果; 3. 否则,调用input.toString()。如果结果是原始值,返回结果; 4. 否则,抛出错误。
2) 変換された型が文字列の場合、2 と 3 は交互に実行されます。つまり、toString が最初に実行されます。()メソッド。
3)preferredTypeは省略可能ですが、このとき日付は文字列とみなされ、その他の値はNumberとして扱われます。
① 入力が組み込みの Date 型の場合、preferredType は String とみなされます。
② それ以外の場合は、Number とみなされ、最初に valueOf を呼び出し、次に toString を呼び出します。
2cc198a1d5eb0d3eb508d858c9f5cbdbToBoolean(引数)戻り結果 | |
false | |
false | |
引数 | |
引数が 0、-0、または NaN の場合のみ false を返し、それ以外の場合は true を返します | |
引数が空文字列の場合(長さが0の場合)のみfalseを返し、それ以外の場合はtrueを返します | |
true | |
true |
underfined、null、false、NaN、''、0、-0、その他すべてを除くtrue を返す
5bdf4c78156c7953567bb5a0aef2fc53ToNumber(引数)結果を返す | |
NaN | |
0 | |
引数が true の場合は 1 を返し、false の場合は 0 を返します | ##Number |
String | |
などの NaN を返します | Symbol|
##Object | |
# for primValue | ##23889872c2e8594e0f446a471a78ec4cToString(引数) |
#"アンダーファインド" | |
"null" | |
引数がtrueの場合は「true」を返し、falseの場合は「false」を返します | |
この数値を表すには文字列を使用します | |
argument | |
TypeError 例外をスローします | |
*最初に primValue= toPrimitive(引数,string)、次に primValue に ToString(primValue) を使用します** |
以上がJavaScript の 2 種類のデータ型変換とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。