JScript

del.icio.us del.icio.us
Digg Digg
Furl Furl
Reddit Reddit
Rojo Rojo
Add to OnlyWire

JScript(ジェイ・スクリプト)は、マイクロソフト社製のスクリプト言語であり、Microsoft Windows 上で動作する。

JavaScriptと類似しており、Internet Explorer を使用したクライアントサイドスクリプティング処理、および Internet Information Services(IIS) などを使用したサーバサイドスクリプティング処理を記述することができる。

また、Windows Script Host(WSH) を利用することで、Windows 上でのバッチ処理を記述することができる。

拡張子は、通常 .js を使用する。

目次

主な特徴

ECMAScriptJavaScript と互換性がある。他に JScript には、以下のような特徴がある。

データ型

JScript で使用するデータ型は、数値、文字、オブジェクト(日付など)、ブール(真偽)など多様なデータの情報を有することができる。

ファイル入出力

FileSystemObject を使用することで、ファイルの入出力ができる。

アプリケーション制御

HTML組み込みの場合JScript内部よりVBScript内の関数を呼び出すことが出来る。アプリケーションがActiveXに対応している場合はJScriptで制御が出来る。(例:Word, Excel)

バージョン

JScript

オリジナルのJScriptはActive Scriptingのエンジンである。他のActive Scripting言語と同じようにCOM/OLEオートメーションプラットフォーム上に実装されており、アプリケーションをホストするためのスクリプト機能を提供する。これはInternet Explorerで表示されたウェブページ上で使用されるほか、HTMLアプリケーション、古典的ASPWindows Script Host、あるいは他のオートメーション環境などで使用される。より新しい.NETベースのJScriptと混同しないよう注意する必要がある。

バージョン 日時 共に公開されたソフトウェア[1] 対応するJavaScriptバージョン1
1.0 1996年8月 Internet Explorer 3.0 1.0
2.0 1997年1月 Windows IIS 3.0 1.1
3.0 1997年10月 Internet Explorer 4.0 1.3
4.0 Visual Studio 6.0 (Visual InterDevの一部として)
5.0 1999年3月 Internet Explorer 5.0 < 1.5
5.1 Internet Explorer 5.01 < 1.5
5.5 2000年7月 Internet Explorer 5.5 1.5
5.6 2001年10月 Internet Explorer 6.0 1.5
5.7 2006年11月 Internet Explorer 7.0 1.5

注(1): JScriptはJavaScriptと同様、ECMA標準に定義されていない多くの機能をサポートする[2]

JScriptはWindows CE上でも動作するが、このバージョンにはActive Debuggingがない。

(出典: MSDNWebmasterWorld Forum)

マネージJScript

マネージJScriptは動的言語ランタイム上でのJScriptの実装であり、IronRubyIronPython、動的Visual Basicなどと並んでマイクロソフトによる動的言語の一つである。JScript .NETはオリジナルのJScriptと比べて動的ではない代わりにCLS互換であるが、マネージJScriptは動的言語ランタイムの上に実装されており、スクリプティングに適した機能を提供する。Microsoft Silverlightや将来のバージョンのASP.NETと共にリリースされる予定である。

(出典: JScript BlogJim Hugunin's Thinking Dynamic blog、 出典: Blog of Jitu)

JScript .NET

JScript .NETはJScriptの.NET Framework向けの実装である。CLS互換の言語であり、非常に強力な機能を継承している。 JScript .NETはASP.NETや完全な.NETアプリケーションの開発に使用することができる。 しかし、Visual Studioにおけるサポートがない。

CLR上で動作し、変数に型を指定した場合、C# などの他の .NET Framework 上の言語と同等の速度で動く。 JScript の上位互換であるが、高速モードでコンパイルすると、全ての変数を宣言する必要が出るなど、一部、互換性が無くなる。コンパイラのデフォルトは高速モードである。

バージョン 日時 共に公開されたソフトウェア
7.0 2000年7月11日 .NET Framework 1.0
7.1  ? .NET Framework 1.1
8.0  ? .NET Framework 2.0

JScript .NETは.NET Compact Frameworkではサポートされない。

JScript .NETのバージョンは古典的なJScriptのバージョンとは無関係なことに注意する必要がある。JScript .NETは独立した製品である。 JScript .NETはVisual Studioの統合開発環境でサポートされていないが、そのバージョンは他の.NET言語と共通で、対応するVisual Studioのバージョンに従っている。

.NET Framework 3.0ではJScriptのバージョンは新しくなっていない。

(出典: 各フレームワークに含まれるMicrosoft.JScript.dllのファイルバージョン)

コード例

HTML に埋め込む場合は、以下のように表記する。

 <html>
 <script language="JScript">
 var weekname = new Array('日','月','火','水','木','金','土');
 var date = new Date();
 var str = "";
 str += date.getYear() + "年";
 str += (date.getMonth() + 1) + "月";
 str += date.getDate() + "日";
 str += " (" + weekname[date.getDay()] + ")";
 document.write("現在の日付は" + str + "です");
 </script>
 <body>
 ・・・

また、ActiveXを交えた次のようなコードでファイルを生成することができる。

 // ファイル操作の為のオブジェクトを生成。
 
 var fso = new ActiveXObject("Scripting.FileSystemObject");
 // もし C:\jscript_test というフォルダが無ければ
 if(! fso.FolderExists("C:\\jscript_test")) {
     // C:\jscript_test を作る。
     var fol = fso.CreateFolder("C:\\jscript_test");
 }
 // .txt のファイル以外でも作成できるという例。
 var fil = fso.CreateTextFile("c:\\jscript_test\\output.html");
 // 作成したファイルに1行書き込む。
 fil.WriteLine("<html><head><title>test</title></head><body>test &lt;b&gt;test&lt;/b&gt;</body></html>");
 // ファイルを開放する。
 fil.close();
 //完了ダイアログを表示。
 WScript.Echo("C:\\jscript_test\\output.html にファイルが作成されました。");

脚注

  1. ^ Microsoft Developer Network. "Version Information (JScript 5.6)" 2007-08-25閲覧.
  2. ^ Microsoft Developer Network. "microsoft jscript Features - Non-ECMA (JScript 5.6)" 2007-08-12閲覧.

関連項目

外部リンク

This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


Giant Panda

Mercedes Car
James Bond Guide
This site monitored by SitePinger.net