ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript における演算子ルールと暗黙的な型変換の詳細な紹介
JavaScript の演算子ルールの暗黙的な型変換とは何ですか? これは、JavaScript を学習するすべての初心者が知っておくべき質問です。次の記事では、主に JavaScript の演算子ルールと暗黙的な型変換について説明します。必要な方は、関連する記事を参照してください。以下の情報を見てみましょう。
はじめに
この記事では、主に JavaScript 演算子ルールと暗黙的な型変換に関する関連コンテンツを紹介し、参考と学習のために共有します。以下では多くを述べませんが、詳細な紹介を見てみましょう。バー。
暗黙的な型変換
JavaScript では、比較演算や加算、減算、乗算、除算の四則演算を実行するときに、JavaScript の暗黙的な型変換メカニズムが頻繁にトリガーされ、この部分が混乱を招くことがよくあります。 . ややこしいところ。たとえば、ブラウザーの console.log 操作では、多くの場合、値を文字列に変換して表示しますが、数学的操作では、まず値を数値型 (日付型オブジェクトを除く) に変換してから操作を実行します。
まず、JavaScript での演算子の演算結果の典型的なセットをいくつか見てみましょう。このセクションを読んだ後、各項目を適切に説明できることを願っています。 JavaScript でよく話題になるプリミティブ型には、数値型、文字列型、ブール型、空型が含まれ、一般的に使用されるプリミティブ型間の変換関数は String、Number、Boolean です:
// 比较 [] == ![] // true NaN !== NaN // true 1 == true // true 2 == true // false "2" == true // flase null > 0 // false null < 0 // false null == 0 // false null >= 0 // true // 加法 true + 1 // 1 undefined + 1 // NaN let obj = {}; {} + 1 // 1,这里的 {} 被当成了代码块 { 1 + 1 } + 1 // 1 obj + 1 // [object Object]1 {} + {} // Chrome 上显示 "[object Object][object Object]",Firefox 显示 NaN [] + {} // [object Object] [] + a // [object Object] + [] // 等价于 + "" => 0 {} + [] // 0 a + [] // [object Object] [2,3] + [1,2] // '2,31,2' [2] + 1 // '21' [2] + (-1) // "2-1" // 减法或其他操作,无法进行字符串连接,因此在错误的字符串格式下返回 NaN [2] - 1 // 1 [2,3] - 1 // NaN {} - 1 // -1
最後に、以下の JavaScript プリミティブ型変換表 (複合型からプリミティブ型への変換例を含む):
プライマリ値
数値型に変換
文字列型に変換
false | 0 | "false" | false |
---|---|---|---|
1 | "true" | true | |
1 | 1 | "1" | |
"0" | 0 | "0" | |
"1" | 1 | "1" | |
NaN | NaN | "NaN" | |
Infinity | Infinity | "Infinity" | |
-Infinity | -Infinity | "-Infinity" | |
"" | 0 | "" | |
"20" | 20 | "20" | |
"20" | NaN | 「二十」 | |
[ ] | 0 | "" | |
[20] | 20 | "20" | |
[10,20] | NaN | 「10、 20" | |
["二十"] | NaN | "二十" | |
["十","二十"] | NaN | "十、二十" | |
function(){} | NaN | "function(){}" | |
{ } | NaN | "[オブジェクト オブジェクト]" | |
ヌル | 0 | "null" | |
未定義 | NaN | "未定義" | |
以上がJavaScript における演算子ルールと暗黙的な型変換の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。