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

JavaScriptはなぜ「型なし言語」と呼ばれるのか?変数宣言の基本を解説

JavaScriptは型なし言語(動的型付け言語)に分類されます。これは、変数がどのようなデータ型の値でも保持できることを意味します。C言語やC++、Javaのように、intcharといったデータ型をあらかじめ指定する必要はありません。

JavaScriptにおける変数の特徴

CやJavaなどの静的型付け言語では、変数を宣言する際にその型を明示する必要があります。しかしJavaScriptでは、変数には数値でも文字列でも、さらにはオブジェクトや関数など、どんな値でも自由に代入できます。同じ変数に対して、後から別の型の値を代入し直すことさえ可能です。

varキーワードによる変数宣言

従来のJavaScriptでは、変数を宣言する際に var キーワードを使用していました。数値であっても文字列であっても、宣言方法は同じく var を使います。

次のコードを実行して、JavaScriptでの変数宣言の方法を確認してみましょう。

サンプルコード

<html>
   <body>
      <script>
         <!--
            var age = 20;
            if( age > 18 ) {
               document.write("<b>Qualifies for driving</b>");
            }
        //-->
      </script>
   </body>
</html>

この例では、変数 age に数値の 20 を代入しています。age が18より大きいため、「Qualifies for driving(運転資格あり)」というメッセージが太字で表示されます。変数 age の型を事前に宣言していない点に注目してください。これこそが、JavaScriptが型なし(動的型付け)言語と呼ばれる理由です。

現代のJavaScriptではlet・constが推奨される

なお、近年のJavaScript(ES2015以降)では、var の代わりに let(再代入可能な変数)と const(再代入不可の定数)を使うことが推奨されています。これらはブロックスコープを持つため、予期しないバグを防ぎやすくなります。

const age = 20;
if (age > 18) {
  console.log("運転資格があります");
}

ただし、いずれのキーワードを使った場合でも、変数に型を指定する必要がないという点は変わりません。この柔軟性こそが、JavaScriptの大きな特徴の一つと言えるでしょう。

  1. JavaScriptで日付が週末(土日)かどうかを判定する方法

    JavaScriptでは、getDay()メソッドを使うことで、指定した日付の曜日を数値として取得できます。戻り値は0(日曜日)〜6(土曜日)となっており、この値を利用すれば、その日付が週末に該当するかどうかを簡単に判定できます。週末判定の基本的な考え方まず、対象となる日付オブジェクトを作成します。var givenDate = new Date(2020-07-18);次に、getDay()メソッドで曜日の数値を取得します。var currentDay = givenDate.getDay();取得した値が 6(土曜日) または 0(日曜日) のいずれかであれば、その日は週末であると判断でき

  2. JavaScriptでランダムなパスワードジェネレーターを作成する方法

    JavaScriptでパスワードジェネレーターを作成するには、Math.random()メソッドを活用するのが簡単で効果的です。Math.random()は0以上1未満の乱数を返すため、これを使って文字コレクションからランダムに文字を選び出し、任意の長さのパスワードを生成できます。 パスワード生成の仕組み 基本的な流れは以下の通りです。 使用する文字(大文字・小文字のアルファベットと数字)を1つの文字列として定義する Math.random()に文字数を掛け、Math.floor()で整数に変換してインデックスを求める 指定された長さになるまでループ処理で文字を連結していく サンプルコード