演算における暗黙の型変換
+ 演算子や比較で型がどのように変換されるかを予測します。
「演算における暗黙の型変換」はCoddyKit上の無料JavaScript Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJavaScript Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 JavaScript Academyコースには全4レッスンが含まれています。
暗黙的な型変換
暗黙的な型変換とは、演算子が演算に必要な型へオペランドを変換することです。変換を引き起こす演算子はそれぞれ異なります。
console.log("5" + 1)
console.log("5" - 1)文字列とのプラス演算
プラス演算子は特殊です。どちらか一方のオペランドが文字列の場合、数値の加算ではなく文字列の連結を行います。
console.log("3" + 4)
console.log(3 + "4")
console.log("a" + 1 + 2)数値同士のプラス演算
両方のオペランドが数値の場合、プラス演算子は加算を行います。後ろに文字列が現れる場合は、演算の順序が重要です。
console.log(1 + 2 + "3")
console.log("1" + 2 + 3)マイナス演算は数値を強制する
マイナス演算子には文字列としての意味がないため、数値に見える文字列であっても、常に両方のオペランドを数値へ変換します。
console.log("10" - "4")
console.log("10" - 4)乗算と除算
マイナス演算子と同様に、乗算演算子と除算演算子もオペランドを数値へ型強制します。数値でない文字列からはNaNが生成されます。
console.log("6" * "2")
console.log("abc" * 2)単項プラス
値の前に単項プラスを付けると、その値が数値へ型強制されます。簡潔な変換方法です。
console.log(+"42")
console.log(+"3.14")
console.log(+true)比較での型強制
小なり記号などの関係演算子は、両方が文字列の場合を除き、オペランドを数値へ変換します。両方が文字列の場合は辞書順で比較します。
console.log("10" > 5)
console.log("apple" < "banana")異なる型の比較
一方が文字列で、もう一方が数値の場合、比較のために文字列が数値へ変換されます。
console.log("20" > 3)
console.log("3" > 20)算術演算でのBoolean
算術演算ではbooleanは1または0になるため、数値にtrueを加えると値が1増えます。
console.log(true + true)
console.log(5 + false)型強制での配列
配列はプラス演算子と一緒に使うと文字列へ変換されます。空配列は空文字列になり、要素が1つの配列はその要素のテキストになります。
console.log([] + [])
console.log([1, 2] + [3])意外な結果を避ける
意図しない連結やNaNを防ぐには、演算の前にNumberやStringを使って明示的に変換します。型強制に頼るより、意図が明確なコードのほうが優れています。
const a = "5"
const b = "3"
console.log(Number(a) + Number(b))クイックチェック
型強制についての知識を確認してみましょう。
まとめ
まとめ:演算子によって引き起こされる型強制は異なります。
- いずれかのオペランドが文字列なら、プラス演算子は連結します
- マイナス、乗算、除算は数値への変換を強制します
- 比較では、両方が文字列でない限り数値へ型強制します
- 意外な結果を避けるには明示的に変換します
console.log("5" + 1)
console.log("5" - 1)よくある質問
「演算における暗黙の型変換」レッスンは無料ですか?
はい。「演算における暗黙の型変換」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、JavaScript Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 JavaScript Academyコースには全4レッスンが含まれています。
「演算における暗黙の型変換」で何を学びますか?
+ 演算子や比較で型がどのように変換されるかを予測します。 ブラウザで直接実行するハンズオンコードでJavaScript Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
JavaScript Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのJavaScript Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「演算における暗黙の型変換」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このJavaScript Academyレッスンでコードを書いて実行できますか?
はい。すべてのJavaScript Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Truthy と Falsy の値
- 緩い等価比較と厳密等価比較
- 演算における暗黙の型変換
- 明示的な型変換の方法