コンテンツにスキップ

JScript

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。Yukoba (会話 | 投稿記録) による 2008年1月5日 (土) 17:49個人設定で未設定ならUTC)時点の版 (JScript .NET)であり、現在の版とは大きく異なる場合があります。

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 <b>test</b></body></html>");
// ファイルを開放する。
fil.close();
//完了ダイアログを表示。
WScript.Echo("C:\\jscript_test\\output.html にファイルが作成されました。");

脚注

  1. ^ Microsoft Developer Network. “Version Information (JScript 5.6)”. 2007年8月25日閲覧。
  2. ^ Microsoft Developer Network. “Microsoft JScript Features - Non-ECMA (JScript 5.6)”. 2007年8月12日閲覧。

関連項目

外部リンク