ホームページ  >  記事  >  ウェブフロントエンド  >  JScript_javascriptスキルの条件付きコメントの詳細説明

JScript_javascriptスキルの条件付きコメントの詳細説明

WBOY
WBOYオリジナル
2016-05-16 16:02:371442ブラウズ

JScript では、次のステートメントを使用して、条件付きコンパイル変数の値に基づいてスクリプトのコンパイルを制御できます。 JScript によって提供される変数を使用することも、@set ディレクティブまたは /define コマンド ライン オプションを使用して独自の変数を定義することもできます。

@cc_on
条件付きコンパイルのサポートをアクティブ化します。

@if
式の値に基づいて一連のステートメントを条件付きで実行します。

@set
条件付きコンパイル ステートメントを使用して変数を作成します。

@cc_on、@if、または @set ステートメントは条件付きコンパイルを有効にします。条件付きコンパイルの一般的な用途には、JScript の新機能の使用、スクリプトへのデバッグ サポートの埋め込み、コード実行の追跡などがあります。

Web ブラウザで実行するスクリプトを作成する場合は、必ず条件付きコンパイル コードをコメントに記述してください。したがって、条件付きコンパイルをサポートしていないホストはこのコードを無視できます。ここに一例を示します。

コードをコピーします コードは次のとおりです:

/*@cc_on @*/
/*@if (@_jscript_version >= 5)
document.write("JScript バージョン 5.0 以降。
");
@else @*/
document.write("より新しいスクリプト エンジンが必要です。
");
/*@end @*/


この例では、特殊なコメント区切り文字を使用しています。これは、@cc_on ステートメントが条件付きコンパイルをアクティブ化した後にのみ使用されます。条件付きコンパイルをサポートしていないスクリプト エンジンでは、エラーを生成せずに新しいスクリプト エンジンを使用する必要があることを示唆するメッセージが表示されます。条件付きコンパイルをサポートするエンジンは、エンジンのバージョンに応じて、最初または 2 番目の document.write をコンパイルします。バージョン 7.x は JScript .NET を意味することに注意してください。詳細については、「ブラウザ機能の検出」を参照してください。

条件付きコンパイルは、サーバーサイド スクリプトやコマンドライン プログラムにも役立ちます。これらのアプリケーションでは、条件付きコンパイルを使用して、他の関数をデバッグ モードでの分析用のプログラムにコンパイルできます。


次の事前定義変数は、条件付きコンパイルに使用できます。

@_win32
Win32 システムで実行中で /platform オプションが指定されていないか、そうでない場合は /platform:anycpu オプションが指定されている場合は True。

@_win16
Win16 システムで実行している場合は True、それ以外の場合は True。

@_mac
Apple Macintosh システムで実行されている場合は True、それ以外の場合は True。

@_アルファ
DEC Alpha プロセッサで実行されている場合は True、それ以外の場合は True。

@_x86
Intel プロセッサ上で実行されており、/platform オプションが指定されていない場合、または /platform:anycpu オプションが指定されている場合は True、それ以外の場合は NaN が指定されています。

@_mc680x0
Motorola 680x0 プロセッサで実行されている場合は True、それ以外の場合は True。

@_PowerPC
Motorola PowerPC プロセッサで実行されている場合は True、それ以外の場合は True。

@_jscript
は常に真実です。

@_jscript_build
JScript スクリプト エンジンのビルド番号。

@_jscript_version
JScript のバージョン番号を Major.minor 形式で表す数値。

@_debug
デバッグ モードでコンパイルする場合は true、それ以外の場合は false。

@_fast
高速モードでコンパイルする場合は true、それ以外の場合は false。

注意
JScript .NET はバージョン番号 7.x を報告します。 JScript 8.0 はバージョン番号 8.x を報告します。

条件付きコンパイル変数を使用する前に、条件付きコンパイルをオンにする必要があります。 @cc_on ステートメントは条件付きコンパイルを有効にします。条件付きコンパイル変数は、Web ブラウザー用に作成されたスクリプトでよく使用されます。条件付きコンパイル変数は、ASP または ASP.NET ページ、またはコマンド ライン プログラム用に作成されたスクリプトではほとんど使用されません。これは、他の方法を使用してコンパイラの互換性を判断できるためです。

Web ページで使用するスクリプトを作成する場合は、必ず条件付きコンパイル コードをコメントに含めてください。こうすることで、条件付きコンパイルをサポートしていないホストはコードを無視できます。ここに一例を示します。


コードをコピー コードは次のとおりです:

/*@cc_on
document.write("JScript バージョン: " @_jscript_version ".
");
@if (@_win32)
Document.write("32 ビット Windows で実行中。
");
@elif (@_win16)
Document.write("16 ビット Windows で実行中。
");
@else
Document.write("別のプラットフォームで実行中です。
");
@end
@*/

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。