JavaScriptってどんなもの!?
JavaScriptは、Netscape Communications 社の開発したオブジェクト指向スクリプト言語で、Netscape 2.0当りからインタプリタが搭載されているものです。Microsoft社のInternet Explorerもバージョン3.0よりJavaScriptを実行する事が出来ます。
近年ホームページが普及している中、HTMLでは出来ない動的なページを間単に作れるということから広く普及して、Webクライアント ( ブラウザ ) 上で動作するスクリプトの標準的存在となっています。
しかしそのスクリプトが動作するのは各ブラウザに搭載されているインタプリタ上になりますので、その動作はスクリプトエンジンを実装するブラウザに依存してしまいます。どういう事かというと 「InternetExploreでは結果がAとなるがNetscapeでは結果がBとなってしまう」 といった事もあるのです。
JavaScriptはどんな時に使うの!?
以下はJavaScriptを使って実現できることのほんの一例になりまが、実際もっと複雑なことも JavaScriptでは実現できてしまいます。 HTMLは静的な画面を表示しますが、JavaScriptではその短所を容易に補えるツールとなっています。
時間によって表示するHTML内容を切り替える
HTMLと連携し、入力によって別のページへジャンプしたりおみくじを作成
フォームからデータを渡す際、データの入力確認、整合性確認
JavaScriptはクライアントサイトで動くスクリプト言語ですので、その処理によって サーバに負荷を掛ける事はありません。つまり全部 CGIのようなサーバサイトのプログラムにしてしまうと Webサーバに負荷が集中してしまう事が考えられる為、簡単な処理まで行うのはあまりお勧めできません。
できれば Webクライアントの入力チェックはクライアントサイドの JavaScriptなどで行い、入力されたデータに対する加工処理を CGIを用いサーバサイドで処理すると言った具合に、各特性を生かし上手く組み合せる事が出来ればとても効率的だと思います。
Java言語、JavaScript??
Javaというものを聞いた事があるかもしれませんが、良く言われる JavaとJavaScriptは全く別物です。
- Java言語と名前が似ている
- Java言語と記述が若干似ている
確かに上記のような類似点はありますが Java言語はSun Microsystems 社が開発したプログラム言語を指します。両者を比べるとJavaScriptの方が難しい知識を必要とする事無く、簡単に作成する事が出来ます。
インタプリタ??
上で見慣れないインタプリタという言葉が出てきましたね。これは反語にコンパイラ型言語というものもあり以下のような事を指します。
インタプリタとはプログラムの実行時に、順次命令を解釈しながら実行させるタイプのプログラムで、コンパイラ言語のようにコンパイルしてそのコンピュータが理解できる言葉に直す手間が省けます。エラーがあったとしても修正してそのまま再度起動するという事も容易に出来ますが、インタプリタはコンパイラ言語に比べて実行時のスピードは遅くなってしまいます。
※ JavaScriptはインタプリタ言語になりますが、Java言語、C言語はコンパイラ言語に分類されます。
オブジェクト指向
JavaScriptはオブジェクト指向型 ( Object Oriented : OO ) のスクリプト言語です。ただし、JavaScript でわざわざオブジェクト指向型の記述をするのか? 全ての機能をサポートしているのか? といった点で完全なるオブジェクト指向型とはいえません。
ここで登場したオブジェクト指向とは聞きなれない方もいらっしゃるかもしれません。 どういったものかというと、まず「オブジェクト」というものがあります、これは実社会で言うと目的を到達するために使用する道具 ( 実体 ) を指します。 そしてそのオブジェクトが提供しているプロパティ ( 属性 ) 、メソッド ( ふるまい ) を操作することで目的を達成して行くという手法です。 う〜ん簡単すぎる ((((((^_^;)
例えば学校や会社への通学・通勤を考えてみましょう。
目的を達成するためには、[ 自転車で駅まで行く ] → [ 電車でGO ] といった手順をふみます。
上記で登場する車の属性とふるまいは次のような感じになります。
JavaScriptでは良く使うオブジェクトが初めから提供されています。その提供されているオブジェクトを使用する事で簡単にブラウザに文字を表示したり、URLを参照する事が出来たりする訳です。 以下に良く使う documentオブジェクトの例を挙げてみます。
[ documentオブジェクト - 文章及び表示に関するオブジェクト ]
| 属性 |
背景色 ( bgColor )、ページタイトル ( title ) |
| ふるまい |
表示 ( write ) 、ドキュメントを閉じる ( close ) |
|
例えば以下のように記述するとWebページにHTMLを出力する事が出来ます。
document.write("Hello World"); //Hello Worldとページに出力される
例えば以下のように記述すると Webページの<title>〜</title>に記述されているタイトルを取得する事が出来ます。
var str = document.title; //このページのタイトルが変数 [str] へ代入される
上の二つの例ではいずれもdocumentオブジェクトを操作しているという事になります。このdocumentオブジェクト以外にもたくさんの便利なオブジェクトが提供されていますので頑張って覚えていきましょう。
またJavaScriptはすでに提供されているオブジェクトを利用することはもちろん、自分で新しいクラス ( オブジェクトの設計図のようなもの ) を定義することにより、独自のオブジェクトを利用することもできます。
|