JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptの変数は特定の型を指定して宣言できる?型の仕組みを解説

JavaScriptの変数に型指定は必要ない

JavaScriptでは、変数そのものに型は存在しません。型を持つのは「値」の方です。これは、JavaやC言語のような静的型付け言語との大きな違いの一つです。

そのため、変数を宣言する際に「この変数は数値型」「この変数は文字列型」といった型を明示する構文はありません。変数は次のようにシンプルに宣言します。

var rank = 5;
var name = "John";

上記の例では、変数 rank には数値が、変数 name には文字列が代入されています。しかし、これらの変数自体が「数値型」「文字列型」に固定されたわけではありません。

同じ変数に別の型の値を代入できる

JavaScriptの変数は動的型付けであるため、宣言後に別の型の値を自由に代入できます。

var rank = 5;
rank = 'first';
document.write(rank);

このコードでは、最初に rank へ数値の 5 を代入した後、文字列の 'first' を再代入しています。エラーにはならず、画面には「first」と表示されます。

なぜ型の指定が不要なのか

ご覧のとおり、JavaScriptで変数宣言時に型を指定しても何のメリットもありません。変数の型は、その時点で代入されている値によって自動的に決まるからです。

  • 数値を代入すれば、その値は数値型(Number)になる
  • 文字列を代入すれば、その値は文字列型(String)になる
  • true / false を代入すれば、論理型(Boolean)になる

この柔軟性こそが、JavaScriptの「動的型付け言語」と呼ばれる所以です。一方で、意図しない型の値が紛れ込むとバグの原因にもなるため、TypeScriptのような静的型チェックツールを使って安全性を高めるアプローチも広く普及しています。

  1. JavaScriptでエラーを再スローすることはできる?基本と実装方法を解説

    JavaScriptでは、一度catch句で捕捉した例外を、throw文によって再度スロー(再スロー)することが可能です。再スローを活用すれば、エラーのログ記録や一部の後処理を実行したうえで、最終的なエラー処理を上位の呼び出し元に委譲するといった、柔軟なエラーハンドリング設計が実現できます。 JavaScriptでエラーを再スローするコード例 以下は、入力された数値の大きさに応じてエラーを処理するか、再スローするかを切り替えるサンプルコードです。 <!DOCTYPE html> <html lang="en"> <head> <

  2. JavaScriptの列挙型(Enum)とは?オブジェクトを使った実装方法をわかりやすく解説

    JavaScriptには列挙型が組み込まれていない JavaScriptは、TypeScriptやJavaなどの言語と異なり、列挙型(Enum)を標準機能としてサポートしていません。そのため、JavaScriptで列挙型のようなものを実現するには、オブジェクトを使って自前で実装する必要があります。 本記事では、オブジェクトを利用してJavaScriptで列挙型を再現する方法を、実際のコード例とともにわかりやすく解説します。 オブジェクトで列挙型を実現する基本の考え方 JavaScriptで列挙型を作る最もシンプルな方法は、キー(名前)と値をペアにしたオブジェクトを定義することです。以下の例で