コンソール :スコープ対象、グローバル

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:34分
  • コンソール API は、システムログへのメッセージのログ記録、タイマーの作成と停止、カウンターの作成とログ記録、スタックトレースのログ記録、および関連コンテンツのグループ化/整理を行うメソッドを提供します。

    コンソール API メソッドは、 Glide System API と同じロギング機能 (gs.info、gs.warn、gs.debug など) を提供しますが、コンソールメソッドを使用してメッセージをログに記録することに慣れている開発者は、より再帰的に使用できます。コンソール API と Glide システム API の両方のメソッドをサーバーで使用できます。

    すべてのコンソール API メソッドは静的であり、(Microsoft Developer Network) MDN のコンソール API のServiceNow®実装です。この API は ServiceNow ベースシステムの一部として提供され、グローバルにアクセスするためにプラグインは必要ありません。スコープ対象のアプリケーションでこのクラスを使用するには、 sn_console 名前空間識別子を使用します。コンソール API にアクセスする には、コンソール (com.glide.console) プラグインを有効にします。

    ログ記録機能

    assert()error()、debug()warn()info()log() などのコンソール API メソッドを使用して生成されたログは、システムログに記録されます。具体的には、UI で次の場所に移動すると、システムログを見つけることができます すべて > システムログ > システムログ. このメニューアイテムでは、すべてのログを表示するか、特定のログタイプ (アプリケーションログ、エラー、スクリプトログステートメントなど) を表示するかを選択できます。[ すべての ログ] ビューの [ソース] 列をフィルタリングすると、エントリをより迅速に見つけることができます。

    文字列置換

    多くのコンソール API メソッド、特に assert()error()、debug()、warn()info()、log() などのメッセージをログに記録できるメソッドでは、0 個以上の置換文字列を最初のパラメーターとして使用できます。

    コンソール API の置換文字列は、文字列や数値などの値を動的に挿入するためにログメッセージで使用するプレースホルダーです。コードが実行されると、これらのプレースホルダーは、指定された順序で追加の引数として渡す実際の値に置き換えられます。これにより、ログがより柔軟で読みやすくなり、文字列を手動で連結する必要はありません。

    一般的な置換文字列:
    • %s:文字列を挿入します。
    • %d または %i:数値 (整数または 10 進数) を挿入します。
    • %f:浮動小数点数を挿入します。
    • %o:オブジェクトを挿入します。
    • %c:CSS スタイルをログに適用します (コンソール出力のスタイル設定に便利)。

    置換文字列を使用した簡単なスクリプト例を次に示します。

    const name = "Alex";
    const age = 25;
    
    console.log("Hello, my name is %s and I am %d years old.", name, age);

    出力例:

    Hello, my name is Alex and I am 25 years old.

    CSS スタイルで置換文字列を使用する例を次に示します。

    const user = { name: "Alex", role: "Developer" };
    console.log("User info: %o", user); // Logs the object
    console.log("%cStyled message", "color: blue; font-weight: bold;"); // Adds styles
    
    出力では、メッセージの User info: { name: "Alex", role: "Developer" } が青と太字でスタイル設定されます。

    タイマーの使用

    コンソール API タイマーを使用して、特定の操作の期間を計算できます。タイマーを開始するには、 コンソール:time(文字列ラベル) を呼び出し、 label パラメーターを使用して名前を割り当てます。ページあたり最大 10,000 個のタイマーを設定できます。タイマーを停止して経過時間をミリ秒単位で取得するには、パラメーターとしてタイマーの名前を渡して コンソール:timeEnd(String label) 呼び出します。

    たとえば、 time("Process Duration")を呼び出して経過時間を測定するタイマーを開始し、 timeEnd("Process Duration")を呼び出すことができます。さらに、このコードは、スクリプトに コンソール:timeLog(String label, Object valN) を渡すことによって、タイマー開始から経過した時間と、最初と 2 番目のアクションがいつ完了したかを計算して出力します。

    console.time("Process Duration");
    
    alert("Step 1: Click to continue."); // Simulates the first action
    console.timeLog("Process Duration", "After Step 1");
    
    alert("Step 2: Do other actions"); // Simulates additional actions
    console.timeLog("Process Duration", "After Step 2");
    
    console.timeEnd("Process Duration");
    出力:
    • 最初のアラートの後:
      Process Duration: 2.345ms After Step 1
    • 2 番目のアラートの後:
      Process Duration: 7.890ms After Step 2
    • タイマーが終了すると、次のようになります。
      Process Duration: 10.123ms

    コンソール - assert(ブールアサーション、オブジェクト val1...valN、文字列 msg、文字列 subst1...substN)

    アサーションが false の場合、エラーメッセージをシステムログに記録します。アサーションが true の場合、このメソッドは何も実行しません。

    表 : 1. パラメーター
    名前 タイプ 説明
    アサーション ブーリアン オプション。アサーションの失敗を示す汎用メッセージをシステムログに記録するかどうかを示すフラグ。
    有効な値:
    • true:アサーション失敗メッセージを記録しません。
    • false:アサーション失敗メッセージをログに記録します。

    デフォルト値:false

    msg 文字列 val1...valNを使用しない場合は必須です。アサーションが失敗したときにシステムログに表示するメッセージ。subst1 through substN パラメーターを使用して設定できる 0 個以上の置換値を含む文字列を受け入れます。

    詳細については、「文字列置換」を参照してください。 コンソール :スコープ対象、グローバルを参照してください。

    subst1...サブストN 文字列 オプション。msg内の置換文字列を置き換える JavaScript 値。これらの値は、指定された順序でログに記録または表示されます。置換文字列の数よりも置換値の方が多い場合、書式設定文字列がない場合と同じ方法で、メッセージ (msg) の後に余分な値自体が書き込まれます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    val1...valN オブジェクト msgが渡されない場合は必須です。メインメッセージ (msg) の後に追加する、スペースまたは別の区切り文字で区切られた追加の JavaScript 値のリストです。文字列やオブジェクトを含む任意の JavaScript データタイプを受け入れ、指定された順序で出力します。
    表 : 2. 返される内容
    タイプ 説明
    なし

    基本的なアサーション

    次の例は、アサーション (1 + 1 === 3) が false の場合に assert() を使用してエラーメッセージ「数学が壊れています!」をログに記録し、アサーション (1 + 1 === 2) が true の場合は何もしない方法を示しています。

    console.assert(1 + 1 === 2, "This won't be logged."); // Assertion is true, nothing happens.
    console.assert(1 + 1 === 3, "Math is broken!");

    出力:

    "Math is broken!"

    追加の値のログ記録

    次の例では、 assert() に追加の値を渡します。

    let x = 5, y = 10;
    console.assert(x + y === 20, "Expected 20, got", x + y);

    出力:

    "Expected 20, got 15" // (because x + y is 15)

    メッセージの置換

    次の例では、 assert() に文字列置換値を渡します。

    let expected = 20, actual = 15;
    console.assert(expected === actual, "Expected %d but got %d", expected, actual);

    出力:

    "Expected 20 but got 15"

    コンソール - count(文字列ラベル)

    指定されたラベルで count() が呼び出された回数をカウントしてログに記録します。

    count() メソッドは、コードブロックが実行された回数やアプリケーションで発生したイベントの数など、何かが発生した回数を追跡するのに役立ちます。コンソール:countReset(String label) を使用して、特定のラベルを持つカウンターをリセットします。

    表 : 3. パラメーター
    名前 タイプ 説明
    label 文字列 オプション。カウンターに付ける名前。ラベルは大文字と小文字を区別し、大文字と小文字が一致しない場合は出力に異なるカウンターを生成します。

    デフォルト:指定しない場合、ラベルは「デフォルト」に設定されます。

    表 : 4. 返される内容
    タイプ 説明
    なし

    次の例は、 count() メソッドがラベル ('apple' や 'banana' など) で呼び出されるたびに出力がどのように表示されるかを示しています。カウントはラベルごとに個別に追跡されます。

    console.count('apple');
    console.count('banana');
    console.count('apple');
    console.count('apple');
    console.count('banana');

    出力:

    apple: 1
    banana: 1
    apple: 2
    apple: 3
    banana: 2

    次の count() の例は、「default」のラベルを継承して、カウンターラベルが指定されていない場合に出力がどのように表示されるかを示しています。

    console.count();
    console.count();
    console.count();

    出力:

    default: 1
    default: 2
    default: 3

    コンソール:countReset(String label)

    指定されたカウンターをゼロにリセットします。

    表 : 5. パラメーター
    名前 タイプ 説明
    label 文字列 オプション。0 にリセットする コンソール - count(文字列ラベル) メソッドで最初に設定されたカウンタの名前。大文字と小文字を区別します。
    デフォルト: デフォルトの カウンターをゼロにリセットします。
    注:
    定義されたラベルなしで count() を使用して新しいカウンタが設定されると、カウンタはデフォルトのラベルを受け取ります。詳細は、「コンソール - count(文字列ラベル)」を参照してください。
    表 : 6. 返される内容
    タイプ 説明
    なし

    次の例は、デフォルトラベルの 5 番目の反復に関連付けられたカウンターをリセットする方法を示しています。

    function greet(user) {
      console.count();
      return 'hi ${user}'
    }
    
    greet("bob");
    greet("alice");
    greet("alice");
    console.count();
    console.countReset();

    出力:

    "default: 1"
    "default: 2"
    "default: 3"
    "default: 4"
    "default: 0"

    次の例では、文字列「bob」を console.count() の最初の呼び出しに、文字列「alice」を 2 番目の呼び出しに、ユーザー変数をラベル引数として渡すと、次のようになります。

    function greet(user) {
      console.count(user);
      return'hi ${user}'
    }
    
    greet("bob");
    greet("alice");
    greet("alice");
    console.countReset("bob");
    console.count("alice");

    出力。カウンター "bob" の値をリセットすると、そのカウンターの値のみが変更されることに注意してください。「alice」の値は変更されません。

    "bob: 1"
    "alice: 1"
    "alice: 2"
    "bob: 0"
    "alice: 3"

    コンソール:debug(オブジェクト val1...valN、文字列 msg、文字列 subst1...substN)

    デバッグレベルでシステムログにデバッグメッセージを記録または出力します。

    debug() メソッドを使用すると、詳細なメッセージングが可能になり、優先度の低いデバッグメッセージや重要度の低いデバッグメッセージに推奨されます。優先度の高いデバッグメッセージングの場合は、 コンソール:log(オブジェクト val1...val2、文字列 msg、文字列 subst1...subst2)を使用します。たとえば、このメソッドを使用して、内部ステータスまたはフローに関する内部開発者向けの長いデバッグメッセージを記述できます。debug() メソッドのメッセージは、特定のブラウザー間で異なる動作をする場合があります。

    console.debug() メソッドは、ServiceNow® インスタンスのシステムログにメッセージを記録します。これらのログは、 ServiceNow® プラットフォームの システムログ > すべてまたはシステムログ > デバッグ.
    注:
    コンソール API メソッドは、 Glide System API と同じロギング機能 (gs.info、gs.warn、gs.debug など) を提供しますが、コンソールメソッドを使用してメッセージをログに記録することに慣れている開発者は、より再帰的に使用できます。コンソール API と Glide システム API の両方のメソッドをサーバーで使用できます。
    表 : 7. パラメーター
    名前 タイプ 説明
    msg 文字列 val1...valNが渡されない場合は必須です。システムログまたは出力に記録するメインメッセージまたはオブジェクト。subst1 through substN パラメーターを使用して設定できる 0 個以上の置換値を含む文字列を受け入れます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    subst1...サブストN 文字列 オプション。msg内の置換文字列を置き換える JavaScript 値。これらの値は、指定された順序でログに記録または表示されます。置換文字列の数よりも置換値の方が多い場合、書式設定文字列がない場合と同じ方法で、メッセージ (msg) の後に余分な値自体が書き込まれます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    val1...valN オブジェクト msgが渡されない場合は必須です。メインメッセージ (msg) の後に追加する、スペースまたは別の区切り文字で区切られた追加の JavaScript 値のリストです。文字列やオブジェクトを含む任意の JavaScript データタイプを受け入れ、指定された順序で出力します。
    表 : 8. 返される内容
    タイプ 説明
    なし

    次の例では、 console.debug()ServiceNow® インスタンスのシステムログにメッセージを記録します。

    (function executeRule(current, previous /*null when async*/) {
        // Logging at different levels for debugging
        console.debug("Business rule triggered for record: " + current.getDisplayValue());
        
        // Example: Check and log a field value
        if (current.priority == 1) {
            console.debug("High-priority incident detected: " + current.number);
        } else {
            console.debug("Incident priority is not high. Priority: " + current.priority);
        }
    
        // Perform some logic
        if (current.state == 1) {
            current.state = 2;
            gs.debug("State updated from 'New' to 'In Progress' for record: " + current.number);
        }
    })(current, previous);

    コンソール:error(オブジェクト val1...valN、文字列 msg、文字列 subst1...subsN)

    エラーレベルでシステムログにメッセージを記録します。

    error() を使用して、無効な入力、失敗した操作など、重大で即時の対応が必要な問題をログに記録したり、予期しない動作をデバッグしたりします。

    注:
    コンソール API メソッドは、 Glide System API と同じロギング機能 (gs.info、gs.warn、gs.debug など) を提供しますが、コンソールメソッドを使用してメッセージをログに記録することに慣れている開発者は、より再帰的に使用できます。コンソール API と Glide システム API の両方のメソッドをサーバーで使用できます。
    表 : 9. パラメーター
    名前 タイプ 説明
    msg 文字列 val1...valNが渡されない場合は必須です。システムログまたは出力に記録するメインメッセージまたはオブジェクト。subst1 through substN パラメーターを使用して設定できる 0 個以上の置換値を含む文字列を受け入れます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    subst1...サブストN 文字列 オプション。msg内の置換文字列を置き換える JavaScript 値。これらの値は、指定された順序でログに記録または表示されます。置換文字列の数よりも置換値の方が多い場合、書式設定文字列がない場合と同じ方法で、メッセージ (msg) の後に余分な値自体が書き込まれます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    val1...valN オブジェクト msgが渡されない場合は必須です。メインメッセージ (msg) の後に追加する、スペースまたは別の区切り文字で区切られた追加の JavaScript 値のリストです。文字列やオブジェクトを含む任意の JavaScript データタイプを受け入れ、指定された順序で出力します。
    表 : 10. 返される内容
    タイプ 説明
    なし
    次の例では、 error() 出力にそれぞれ次のコードが表示されます。
    • 最初の例では、単に「エラーが発生しました!」とエラースタイルの形式で表示されます。
    • 2 つ目は、「モジュール:ModuleName のエラー」と表示されます。
    • 3 つ目には「予期しない値:42」と表示されます。
    console.error("An error occurred!");
    console.error("Error in module:", "ModuleName");
    console.error("Unexpected value: %d", 42);
    

    コンソール - group(文字列ラベル)

    システムログに新しいインライングループを作成します。これにより、 groupEnd() が呼び出されるまで、後続のすべてのメッセージが追加のレベルでインデントされます。この方法を使用して、出力ログとシステムログ内の関連メッセージを視覚的に整理してグループ化します。

    グループ化を終了するには、 コンソール:groupEnd() メソッドを呼び出します。groupEnd() メソッドは、グループのインデントも 1 レベル減らします。
    注:
    group() は、出力内のすべてのグループ化レベルを表示し、折りたたんだり展開したりすることはできません。
    表 : 11. パラメーター
    名前 タイプ 説明
    label 文字列 オプション。出力に表示するグループのラベル名。

    デフォルト: ラベルを渡さない場合、 group() はテキストを出力しませんが、新しい空行を 1 レベルインデントします。

    表 : 12. 返される内容
    タイプ 説明
    なし

    次の例では、 log() を渡して新しいネストされたブロックを作成し、 次に group() を渡してインデントされたグループをログに記録します。group () を呼び出すたびに、新しいレベルで行がインデントされます。また、このスクリプトは groupEnd() を呼び出して各グループを終了し、そのインデントを 1 レベル減らします。

    console.log("Start logging...");
    console.group("Group 1");
    console.log("Inside Group 1 - Message 1");
    console.log("Inside Group 1 - Message 2");
    console.group("Nested Group");
    console.log("Inside Nested Group - Message 1");
    console.groupEnd();
    console.log("Back to Group 1 - Message 3");
    console.groupEnd();
    console.log("End logging...");

    表示/出力:

    Start logging...
        Group 1
            Inside Group 1 - Message 1
            Inside Group 1 - Message 2
                Nested Group
                    Inside Nested Group - Message 1
            Back to Group 1 - Message 3
    End logging...

    次の例は、グループラベルが設定されている場合にグループがどのようにインデントされるかを示しています。

    console.group("Group 1");
    console.log("in group 1");
    console.group();
    console.log("in group 2");

    出力:

    Group 1
      in group 1
         in group 2

    次の例は、グループラベルが設定されていない場合にグループがどのようにインデントされるかを示しています。

    console.group(); // no label passed
    console.log("in group 1");
    console.group();
    console.log("in group 2");

    出力:

    in group 1
    
         in group 2

    コンソール:groupEnd()

    group() で作成された現在のインライングループを終了し、インデントを 1 レベル減らします。

    表 : 13. パラメーター
    名前 タイプ 説明
    なし
    表 : 14. 返される内容
    タイプ 説明
    なし

    次の例では、 group() を呼び出してインデントされたレベルをログに記録することで、新しいネストされたブロックを作成します。スクリプトは groupEnd() を渡してグループを終了し、そのインデントを 1 レベル減らします。

    console.log("This is the outer level");
    console.group();
    console.log("Level 2");
    console.group();
    console.log("Level 3");
    console.warn("More of level 3");
    console.groupEnd();
    console.log("Back to level 2");
    console.groupEnd();
    console.log("Back to the outer level");

    出力:

    This is the outer level
        Level 2
            Level 3
            ⚠️ More of level 3
        Back to level 2
    Back to the outer level

    コンソール:info(Object val1...valN、文字列 msg、文字列 subst1...substN)

    情報レベルでシステムログにメッセージを記録します。

    注:
    コンソール API メソッドは、 Glide System API と同じロギング機能 (gs.info、gs.warn、gs.debug など) を提供しますが、コンソールメソッドを使用してメッセージをログに記録することに慣れている開発者は、より再帰的に使用できます。コンソール API と Glide システム API の両方のメソッドをサーバーで使用できます。
    表 : 15. パラメーター
    名前 タイプ 説明
    msg 文字列 val1...valNが渡されない場合は必須です。システムログまたは出力に記録するメインメッセージまたはオブジェクト。subst1 through substN パラメーターを使用して設定できる 0 個以上の置換値を含む文字列を受け入れます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    subst1...サブストN 文字列 オプション。msg内の置換文字列を置き換える JavaScript 値。これらの値は、指定された順序でログに記録または表示されます。置換文字列の数よりも置換値の方が多い場合、書式設定文字列がない場合と同じ方法で、メッセージ (msg) の後に余分な値自体が書き込まれます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    val1...valN オブジェクト msgが渡されない場合は必須です。メインメッセージ (msg) の後に追加する、スペースまたは別の区切り文字で区切られた追加の JavaScript 値のリストです。文字列やオブジェクトを含む任意の JavaScript データタイプを受け入れ、指定された順序で出力します。
    表 : 16. 返される内容
    タイプ 説明
    なし

    次の例では、 info() メソッドを使用して、レコード番号と現在のフォームの優先度という 2 つの情報をログに記録します。この方法は、フォーム内のデータをデバッグまたは検証する際のクイックチェックに役立ちます。

    function onLoad() {
        console.info("Form loaded for record:", g_form.getValue("number")); // Log the record number
        console.info("Current priority is:", g_form.getValue("priority"));  // Log the priority
    }

    コンソール:log(オブジェクト val1...val2、文字列 msg、文字列 subst1...subst2)

    メッセージをシステムログに記録します。

    注:
    コンソール API メソッドは、 Glide System API と同じロギング機能 (gs.info、gs.warn、gs.debug など) を提供しますが、コンソールメソッドを使用してメッセージをログに記録することに慣れている開発者は、より再帰的に使用できます。コンソール API と Glide システム API の両方のメソッドをサーバーで使用できます。
    表 : 17. パラメーター
    名前 タイプ 説明
    msg 文字列 val1...valNが渡されない場合は必須です。システムログまたは出力に記録するメインメッセージまたはオブジェクト。subst1 through substN パラメーターを使用して設定できる 0 個以上の置換値を含む文字列を受け入れます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    subst1...サブストN 文字列 オプション。msg内の置換文字列を置き換える JavaScript 値。これらの値は、指定された順序でログに記録または表示されます。置換文字列の数よりも置換値の方が多い場合、書式設定文字列がない場合と同じ方法で、メッセージ (msg) の後に余分な値自体が書き込まれます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    val1...valN オブジェクト msgが渡されない場合は必須です。メインメッセージ (msg) の後に追加する、スペースまたは別の区切り文字で区切られた追加の JavaScript 値のリストです。文字列やオブジェクトを含む任意の JavaScript データタイプを受け入れ、指定された順序で出力します。
    表 : 18. 返される内容
    タイプ 説明
    なし

    次の例は、 log() を使用してレコード番号とフォームの現在のステータスをシステムログに記録する方法を示しています。

    function onLoad() {
        console.log("Form loaded for record:", g_form.getValue("number")); // Log the record number
        console.log("Current state is:", g_form.getValue("state")); // Log the state
    }

    コンソール:time(文字列ラベル)

    操作にかかる時間を追跡するために使用できるタイマーを開始します。

    各タイマーに一意の名前を付けることができ、特定のページで最大 10,000 個のタイマーを実行できます。同じラベル名で コンソール timeEnd() メソッドを呼び出すと、カウンターはタイマーが開始されてから経過した時間をミリ秒単位で出力します。コンソールの timeLog() メソッドを使用して、タイマーの開始時間と停止時間の間にキャプチャされた経過時間をログに記録します。

    このメソッドを他の時間ベースの コンソール API メソッドで使用する方法の例については、 コンソール :スコープ対象、グローバル の「タイマーの使用」を参照してください。

    表 : 19. パラメーター
    名前 タイプ 説明
    label 文字列 オプション。新しいタイマーに付ける名前。コンソール:timeEnd(String label)を呼び出すときに同じ名前を使用してタイマーを停止し、経過時間をコンソールに出力します。

    タイマーの最大数:10,000

    デフォルト:省略した場合 、「デフォルト」 というラベルが使用されます。

    表 : 20. 返される内容
    タイプ 説明
    なし

    以下は、 time("label") を使用してラベル "label" のタイマーを開始する方法を示しています。 console.timeEnd("label") メソッドは、同じラベルのタイマーを停止し、経過時間をログに記録します。この例では、レコードの数と優先度を取得して記録するのにかかる時間を測定します。

    function onLoad() {
        console.time("Form load processing time"); // Start timing
    
        // Example: Simulate some processing
        var recordNumber = g_form.getValue("number");
        console.log("Record number is:", recordNumber);
    
        var priority = g_form.getValue("priority");
        console.log("Priority is:", priority);
    
        console.timeEnd("Form load processing time"); // End timing and log duration
    }

    コンソール:timeEnd(String label)

    time () を呼び出して以前に開始された指定されたタイマーを停止します。

    このメソッドを他の時間ベースの コンソール API メソッドで使用する方法の例については、 コンソール :スコープ対象、グローバル の「タイマーの使用」を参照してください。

    表 : 21. パラメーター
    名前 タイプ 説明
    label 文字列 オプション。停止するタイマーの名前。停止すると、経過時間がコンソールに自動的に表示され、時間が終了したことを示すインジケーターが表示されます。このラベルは、 コンソール:time(文字列ラベル) label パラメーターで指定されたタイマーと一致する必要があり、大文字と小文字が区別されます。

    デフォルト:省略した場合、「 デフォルト」ラベルが使用されます。

    表 : 22. 返される内容
    タイプ 説明
    なし

    次の例は、 time("label") を使用してラベル "label" のタイマーを開始する方法を示しています。 console.timeEnd("label") メソッドは、同じラベルのタイマーを停止します。console.log() は経過時間をログに記録します。この例では、レコードの数と優先度を取得してシステムログに記録するのにかかる時間を測定します。

    function onLoad() {
        console.time("Form load processing time"); // Start timing
    
        // Example: Simulate some processing
        var recordNumber = g_form.getValue("number");
        console.log("Record number is:", recordNumber);
    
        var priority = g_form.getValue("priority");
        console.log("Priority is:", priority);
    
        console.timeEnd("Form load processing time"); // End timing and log duration
    }

    コンソール:timeLog(String label, Object valN)

    指定されたタイマーの現在の値をシステムログに記録します。

    このメソッドを他の時間ベースの コンソール API メソッドで使用する方法の例については、 コンソール :スコープ対象、グローバル の「タイマーの使用」を参照してください。

    表 : 23. パラメーター
    名前 タイプ 説明
    label 文字列 オプション。コンソールに記録するタイマーの名前。コンソール:time(文字列ラベル) labelパラメーターで指定されたタイマーと一致する必要があり、大文字と小文字が区別されます。

    デフォルト:省略した場合 、「デフォルト」 というラベルが使用されます。

    valN オブジェクト オプション。タイマー出力後にログに記録される追加値。文字列に対する特別な処理で任意のデータタイプをサポートする非構造化オブジェクトを受け入れます。
    表 : 24. 返される内容
    タイプ 説明
    なし

    次の例は、time() メソッドを使用して以前に開始したタイマーのラベル値を使用して timeLog() を呼び出す方法を示しています。timeLog() メソッドは、タイマーの現在の値をログに記録します。

    console.time("reticulating splines");
    reticulateSplines();
    console.timeLog("reticulating splines");
    // reticulating splines: 650ms

    タイマー名を省略すると、タイマーの名前は 「default」になります。

    console.time();reticulateSplines();
    console.timeLog();// default: 780ms

    対応するタイマーがない場合、 console.timeLog() は次のような警告をログに記録します。

    Timer "timer name" doesn't exist.
    

    タイマー出力の後、コンソールに追加の値を記録できます。

    console.time();reticulateSplines();
    console.timeLog("default","Hello","world");// default: 780ms Hello world

    別の例では、 console.time('Timer') は "Timer" というラベルの付いたタイマーを開始します。 console.timeLog('Timer') は、オプションの追加メッセージとともに経過時間をログに記録します。 console.timeEnd('Timer') はタイマーを停止し、合計経過時間をログに記録します。

    console.time('Timer');
    
    setTimeout(() => {
        console.timeLog('Timer', 'Halfway done');
    }, 1000);
    
    setTimeout(() => {
        console.timeLog('Timer', 'Almost done');
        console.timeEnd('Timer');
    }, 2000);

    ログ出力:

    Timer: 1000ms Halfway done
    Timer: 2000ms Almost done
    Timer: 2000ms

    コンソール:trace(オブジェクトオブジェクト)

    情報レベルでスタックトレースをシステムログに記録します。

    表 : 25. パラメーター
    名前 タイプ 説明
    オブジェクト オブジェクト オプション。トレースと共にコンソールに出力する 0 個以上のオブジェクト。オブジェクトは、 コンソール:log(オブジェクト val1...val2、文字列 msg、文字列 subst1...subst2) メソッドに渡された場合と同じ方法でアセンブルされ、書式設定されます。

    デフォルト:出力でスタック全体を返します。

    表 : 26. 返される内容
    タイプ 説明
    なし

    次の例は、 trace() が スタックトレースとともにメッセージ Trace example をログに記録する方法を示しています。

    function firstFunction() {
        secondFunction();
    }
    
    function secondFunction() {
        thirdFunction();
    }
    
    function thirdFunction() {
        console.trace('Trace example');
    }
    
    firstFunction();

    スタックトレースには呼び出しシーケンスが表示されます。 thirdFunctionsecondFunction によって呼び出され、 firstFunction によって呼び出されました。console.trace('Trace example') は、スタックトレースとともにメッセージ Trace example をログに記録します。

    出力:

    Trace example
        at thirdFunction (<filename>:8:13)
        at secondFunction (<filename>:4:5)
        at firstFunction (<filename>:2:5)

    コンソール - warn(オブジェクト val1...valN、文字列 msg、文字列 subst1...subst2)

    警告レベルでシステムログに警告メッセージを記録します。

    注:
    コンソール API メソッドは、 Glide System API と同じロギング機能 (gs.info、gs.warn、gs.debug など) を提供しますが、コンソールメソッドを使用してメッセージをログに記録することに慣れている開発者は、より再帰的に使用できます。コンソール API と Glide システム API の両方のメソッドをサーバーで使用できます。
    表 : 27. パラメーター
    名前 タイプ 説明
    msg 文字列 val1...valNが渡されない場合は必須です。システムログまたは出力に記録するメインメッセージまたはオブジェクト。subst1 through substN パラメーターを使用して設定できる 0 個以上の置換値を含む文字列を受け入れます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    subst1...サブストN 文字列 オプション。msg内の置換文字列を置き換える JavaScript 値。これらの値は、指定された順序でログに記録または表示されます。置換文字列の数よりも置換値の方が多い場合、書式設定文字列がない場合と同じ方法で、メッセージ (msg) の後に余分な値自体が書き込まれます。

    詳細については、 コンソール :スコープ対象、グローバル の「置換文字列の使用」を参照してください。

    val1...valN オブジェクト msgが渡されない場合は必須です。メインメッセージ (msg) の後に追加する、スペースまたは別の区切り文字で区切られた追加の JavaScript 値のリストです。文字列やオブジェクトを含む任意の JavaScript データタイプを受け入れ、指定された順序で出力します。
    表 : 28. 返される内容
    タイプ 説明
    なし

    次の例では、 warn() を使用して警告メッセージをログに記録します。通常は、目立つようにスタイル設定されています (警告アイコンや黄色のテキストなど)。この例では、レコードの優先度をチェックします。高の場合 (優先度 ==="1" )、警告メッセージがログに記録されます。高くない場合は、現在の優先度値で緊急度の低いメモがログに記録されます。

    function onLoad() {
        var priority = g_form.getValue("priority");
    
        if (priority === "1") {
            console.warn("Warning: This is a high-priority incident! Immediate attention required.");
        } else {
            console.warn("Note: Priority is not high. Current priority:", priority);
        }
    }
    その結果、 warn() は次のようにエラーをログに記録または表示します。
    • 優先度が高い場合: ⚠️ 警告:これは優先度の高いインシデントです! 早急な対応が必要です。
    • その他の優先度の場合: ⚠️ 注:優先度は高くありません。現在の優先度:3