無理しないでゆっくり休んでね!

JavaScript 型変換

JavaScriptは動的型付け言語であり、変数のデータ型は実行時に決定されます。JavaScriptでは、型変換は明示的または暗黙的に行われます。

暗黙的な型変換

JavaScriptは、演算子を適用する際に自動的に型変換を行います。これを型強制または暗黙的な型変換と呼びます。

意図しない挙動なので、覚えなくてもいいです。

例をいくつか示します。

数値と文字列の結合

var number = 10;
var string = "20";
var result = number + string;

console.log(result); // 結果は文字列 "1020" 

文字列と真偽値の比較

var string = "10";
var boolean = true;
var result = string == boolean;

console.log(result); // 結果は真偽値 false

明示的な型変換

明示的な型変換は、開発者が特定の結果を得るために意図的に行います。JavaScriptは、数値、文字列、真偽値などのプリミティブ型への変換メソッドを提供します。

文字列から数値への変換

  • Number()
  • parseInt()parseFloat()

これはJavaScriptにおいて文字列を数値に変換するための関数です。

Number() 関数は、与えられた引数を数値に変換します。

引数が数値の文字列や数値そのものであれば、そのまま数値に変換されます。引数が空の文字列や文字列中に数値以外の文字が含まれている場合、結果は NaN(非数)となります。

var num1 = Number("10");       // 数値の文字列を数値に変換
console.log(num1);             // 結果: 10

var num2 = Number("Hello");    // 非数値の文字列を数値に変換
console.log(num2);             // 結果: NaN

parseInt() 関数は、与えられた文字列を整数に変換します。

引数の文字列が整数の表現で始まっている場合、その部分の数値が抽出されます。しかし、引数が浮動小数点数の表現であったり、数値以外の文字が含まれている場合、整数への変換は停止し、最初の数値部分のみが返されます。

var num1 = parseInt("10");         // 整数の文字列を整数に変換
console.log(num1);                 // 結果: 10

var num2 = parseInt("10.5");       // 浮動小数点数の文字列を整数に変換
console.log(num2);                 // 結果: 10

var num3 = parseInt("20 years old");   // 文字列中の最初の数値のみを整数に変換
console.log(num3);                     // 結果: 20

parseFloat() 関数は、与えられた文字列を浮動小数点数に変換します。

引数の文字列が浮動小数点数の表現である場合、そのまま浮動小数点数に変換されます。しかし、引数が数値以外の文字を含んでいる場合、最初の数値部分のみが返されます。

var num1 = parseFloat("3.14");      // 浮動小数点数の文字列を浮動小数点数に変換
console.log(num1);                  // 結果: 3.14

var num2 = parseFloat("10");        // 整数の文字列を浮動小数点数に変換
console.log(num2);                  // 結果: 10

var num3 = parseFloat("20 years old");   // 文字列中の最初の数値のみを浮動小数点数に変換
console.log(num3);                        // 結果: 20

数値から文字列への変換

  • toString()
  • 文字列連結
  • String() 関数

数値に対して toString() メソッドを呼び出すことで、数値を文字列に変換することができます。

var number = 10;
var string = number.toString();

console.log(string); // 結果: "10"

数値を文字列と結合することで、数値を文字列に変換することもできます。(空白でもOK)

var number = 10;
var string = number + " ";

console.log(string); // 結果: "10"

String() 関数を使用して数値を文字列に変換することもできます。

var number = 10;
var string = String(number);

console.log(string); // 結果: "10"

コメント

タイトルとURLをコピーしました