Menu
Coddy logo textTech

型強制

CoddyのJavaScriptジャーニー「基礎」セクションの一部 — レッスン 22/77。

JavaScriptにおける型強制(Type coercion)とは、あるデータ型から別のデータ型への値の自動的な変換のことです。これは、特定の操作において暗黙的に発生することもあれば、String()Number()、またはBoolean()のような関数を使用して明示的に行われることもあります。

暗黙の型変換は、緩い比較演算子 == を使用する場合や、数値を文字列に加算するなど、異なる型の間で演算を行う際によく発生します。

例えば:

let result = 5 + "5";
// "55"を保持します。数値の5が暗黙的に文字列の"5"に変換され、その後連結されるためです。
let result = true == 1;
// booleanのtrueが暗黙的に数値の1に変換されるため、trueとなります

明示的な型変換は、組み込み関数を使用して行うことができます:

  • String(value) は値を文字列に変換します
  • Number(value) は値を数値に変換します
  • Boolean(value) は値を真偽値に変換します

例えば:

let num = "123";
let str = Number(num) + 7; // 130を保持
console.log(str); 
let bool = true;
let numBool = Number(bool); // 1を保持します

型強制を理解することは、正確なJavaScriptコードを書き、予期しない結果を避けるために不可欠です。

challenge icon

チャレンジ

初心者

異なる型のいくつかの変数が含まれたコードが与えられています。

あなたのタスクは、型強制(型変換)を行い、その結果を出力することです:

  1. 数値の num を文字列に変換し、a という名前の変数に格納してください。
  2. 真偽値の bool を数値に変換し、b という名前の変数に格納してください。
  3. 文字列の str を数値に変換し、c という名前の変数に格納してください。
  4. numstr を結合することで暗黙的な型強制を行い、その結果を d という名前の変数に格納してください。

最初の3つのタスクには明示的な型変換関数(String()Number())を使用し、最後のタスクでは暗黙的な型強制を確認してください。

チートシート

JavaScriptにおける型強制(Type coercion)とは、値があるデータ型から別のデータ型へ自動的に変換されることです。

暗黙的な型強制は、演算の中で自動的に発生します:

let result = 5 + "5"; // "55" - 数値が文字列に変換される
let result = true == 1; // true - 真偽値が数値に変換される

明示的な型強制は、組み込み関数を使用します:

  • String(value) は値を文字列に変換します
  • Number(value) は値を数値に変換します
  • Boolean(value) は値を真偽値に変換します
let num = "123";
let str = Number(num) + 7; // 130

let bool = true;
let numBool = Number(bool); // 1

自分で試してみよう

// 与えられた変数
let num = 42
let bool = false
let str = "7"

// 以下にコードを入力してください


// 下の行は変更しないでください
console.log(`a = ${a}`)
console.log(`b = ${b}`)
console.log(`c = ${c}`)
console.log(`d = ${d}`)
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン