CodeGym /コース /Frontend SELF JA /JavaScriptでの型変換

JavaScriptでの型変換

Frontend SELF JA
レベル 35 , レッスン 0
使用可能

1.1 明示的な型変換

JavaScriptでの型変換は、あるデータ型から別のデータ型に値を変換するプロセスだよ。型変換には 明示的(手動)と暗黙的(自動)の2つのタイプがあるんだ。このプロセスを理解することは、エラーを防ぎ、予測可能なコードを作成するために重要なんだ。

明示的な型変換、または手動変換としても知られていて、JavaScriptの組み込み関数や メソッドを使って行われるんだ。プログラマーがどのデータ型を他の型に変換するかを明示的に指定するんだ。

明示的な変換の主なメソッド:

1. 文字列への変換

  • メソッド String(value): 値を文字列に変換する
JavaScript
    
      let num = 123;
      let str = String(num);
      console.log(typeof str); // "string"
    
  

  • value.toString(): オブジェクトのメソッドで、値を文字列に変換する
JavaScript
    
      let bool = true;
      let str = bool.toString();
      console.log(typeof str); // "string"
    
  

2. 数値への変換

  • Number(value): 値を数値に変換する
JavaScript
    
      let str = "456";
      let num = Number(str);
      console.log(typeof num); // "number"
    
  

  • parseInt(value, base): 文字列を整数に変換する。パラメータ base は基数を指定する
JavaScript
    
      let str = "123";
      let num = parseInt(str, 10);
      console.log(typeof num); // "number"
    
  

  • parseFloat(value): 文字列を浮動小数点数に変換する
JavaScript
    
      let str = "123.45";
      let num = parseFloat(str);
      console.log(typeof num); // "number"
    
  

3. ブール値への変換

  • Boolean(value): 値をブール値に変換する
JavaScript
    
      let str = "";
      let bool = Boolean(str);
      console.log(typeof bool); // "boolean"
    
  

1.2 暗黙的な型変換

暗黙的な型変換、または自動的や隠れた変換とも呼ばれ、JavaScriptがデータ型の異なる オペランドを操作するときに自動で実行されるんだ。暗黙的な変換は予期しない結果を生むことがあるから、理解して注意して使うべきだよ。

1. 文字列への変換

重要!

任意のオブジェクトと文字列を足すとき、JavaScriptはオブジェクトを文字列に変換しようとするんだ。

例:

JavaScript
    
      let result = "The number is " + 123;
      console.log(result); // "The number is 123"
    
  

2. 数値への変換

重要!

文字列に含まれる数字に他の算術演算子(+を除く)を使った時のこと。

JavaScript
    
      let result = "123" - 0;
      console.log(result); // 123 (数値)
    
  

実際の動作例:

JavaScript
    
      let result = "123" - 10;
      console.log(result); // 113 (数値)

      let result2 = "123" + 10;
      console.log(result2); // 12310 (文字列)
    
  

3. ブール値への変換

論理的なコンテキスト(条件演算子、ループなど)で値を使用する場合。

JavaScript
    
      let value = "hello";

      if (value) {
        console.log("Value is truthy");   // 出力: "Value is truthy"
      }
    
  

論理的なコンテキストでの変換例:

  • false, 0, "" (空文字列), null, undefined, と NaN は偽(false)とみなされる
  • その他のすべての値は真(true)とみなされる
JavaScript
    
      if ("") {
        console.log("This won't be logged.");
      } else {
        console.log('"" is considered false in a boolean context.');
      }

      // '"" is considered false in a boolean context.'
    
  

1.3 暗黙的な変換の例

算術演算子を使った例:

JavaScript
    
      let width = "100";
      let height = "200";

      let area = Number(width) * Number(height); // 明示的な変換
      console.log(area); // 20000

      let perimeter = (+width) + (+height); // 明示的な変換に単項プラスを使用
      console.log(perimeter); // 300
    
  

論理コンテキストの例:

JavaScript
    
      let userInput = ""; // 空文字列

      if (!userInput) {
        console.log("ユーザーはデータを入力しなかった。"); // 文字列をブール値に暗黙的に変換
      }
    
  

混合型の例:

JavaScript
    
      let value = "10";
      let increment = 5;

      let result = value + increment; // 数値を文字列に暗黙的に変換
      console.log(result); // "105"

      result = Number(value) + increment; // 文字列を数値に明示的に変換
      console.log(result); // 15
    
  
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION