— y2sunlight 2020-10-13
どんな言語でも最初は Hello, World!
から始めて下さい。
<script type="text/javascript"> window.alert('Hello, World!'); </script>
html内にJavaScriptを記述する場合、以下の場所が推奨されます。
JavaScriptの実行コードをbody要素の一番最後に置くことで、ページの描画が終わった直後にスクリプトを実行することができます。これによって見た目の描画速度が改善されます。但し、関数定義はhead要素の中に記述することが推奨されています。
<html> <head> <!-- 2.headの中(関数定義) --> </head> <body> ・・・ <!-- 1.bodyの一番最後 --> </body> </html>
スクリプトのコードをhtml内に記述するのではなく、外部ファイルとして保存し、それを呼び出すことも可能です。
<script type="text/javascript" src="sample.js"></script>
別ファイルに保存することで、htmlで記述したページレイアウトとJavaScriptを分離することができるので、コードの再利用やhtmlの見易さの観点からこちらの方が優れた方法だと言えます。
一般的にJavaScriptは script
要素の中に記述しますが、a
要素の href
属性の中に記述することもできます。
<a href="JavaScript:window.alert('Hello, World!')">Hello, World!</a>
このような記法をJavaScript疑似プロトコルと呼びます。
JavaScriptでは、キーワード、変数名及び関数名は大文字と小文字を区別します。尚、HTMLでは大文字と小文字を区別しません。HTMLとJavaScriptは同じファイルで使用される機会があるので注意して下さい。
プログラム内のキーワード、変数名または関数名などのように、空白文字(スペース、タブ)や改行文字を含まない字句の単位の事をトークンと呼びます。トークンの中で空白文字や改行文字を挿入すると、トークンはそこで分割されてしまいます。
JavaScriptは、他の言語と同様に、トークンを区切る空白文字及び改行文字を無視します。それらは、インデントなどのようにプログラムを見易くするために、使用することが出来ます。
JavaScriptの文は、C/C++、PHP、Javaなどと同様に、セミコロンで終わることが出来ます。また、JavaScriptでは2つの文が別の行に分かれて記述されていれば、改行によって文を自動的に終了することも出来ます。
a = 1; // 文を;で終了する(推奨) b = 1; a = 1 // 改行によって、文は自動的に終了できる b = 1
しかし、改行による文の終了は、意図しない結果をもたらすことがあるので、セミコロンの省略は推奨できません。以下の例は return true
を意識したコーディングですが、実際は return
のみが実行されてしまいます。
return true;
JavaScriptの文は、C/C++、PHP、Javaなどと同様に、単一行コメントとブロックコメントが書くことが出来ます。
// 単一行コメント /* ブロックコメント */
単一行コメントは //
から行末までのテキストをコメントと見なします。また、ブロックコメントは /*
から始まり */
で終わるまでをコメントと見なします。ブロックコメントは、複数行にまたがることが出来ますが、入れ子にすることは出来ません。
ドキュメンテーションは関数や変数の宣言の直前に記述します。/**
から始まり */
で終わります。
/** * ドキュメンテーション */
リテラルとはプログラムに記述するデータ値のことです。以下の簡単な例を示します。
123 // 整数 1.23 // 実数 'Suzuki Taro' // 文字列 true // 真偽値 null // null値 [1, 2, 3] // 配列 {name:'Taro', age:15} // オブジェクト
識別子とは、変数名、関数名などの名前のことです。識別子で使える文字は、以下のものがあります。
_
)$
)但し、先頭の文字に数字を使うことはできません。また、次に挙げる予約語(キーワード)を使用することはできません。
以下にJavaScript言語で一般的によく使われる識別子の命名規則を挙げておきます。