コンソール ツールユーティリティの関数とセレクター

Console Utilities API には、次のような一般的なタスクを実行するための便利な変数と関数のコレクションが含まれています。

  • DOM 要素の選択と検査。
  • 読み取り可能な形式でデータを表示する。
  • プロファイラーの停止と起動。
  • DOM イベントの監視。

これらの変数と関数は、DevTools コンソールに直接入力することによってのみ機能します。変数を使用してスクリプトから関数を呼び出すことはできません。

概要

変数または関数 説明
最近評価された式: $_ 最後に評価された式の値を返します。
最近選択した要素または JavaScript オブジェクト: $0-$4 最近選択した要素または JavaScript オブジェクトを返します。
クエリ セレクター: $(selector) クエリ セレクター。は、指定された CSS セレクターを持つ最初の DOM 要素への参照を返します (例: document.querySelector())。
クエリ セレクターすべて: $$(selector, [startNode]) クエリ セレクターすべて。は、指定された CSS セレクターに一致する要素の配列 (など document.querySelectorAll()) を返します。
XPath: $x(path, [startNode]) 指定した XPath 式に一致する DOM 要素の配列を返します。
clear() 履歴のコンソールをクリアします。
copy(object) 指定したオブジェクトの文字列表現をクリップボードにコピーします。
debug(function) 指定した関数が呼び出されると、デバッガーが呼び出され、[ソース] パネルの関数内で中断されます。
dir(object) など、指定したオブジェクトのすべてのプロパティのオブジェクト スタイルの一覧を表示します console.dir()
dirxml(object) Elements ツールに表示される、指定したオブジェクトの XML 表現を印刷します (例: console.dirxml())。
inspect(object/function) Elements ツールで指定した DOM 要素を開いて選択するか、メモリ ツールで指定した JavaScript ヒープ オブジェクトを選択します。
getEventListeners(object) 指定したオブジェクトに登録されているイベント リスナーを返します。
keys(object) 指定したオブジェクトに属するプロパティの名前を含む配列を返します。
monitor(function) 関数名を示すメッセージと、要求の一部として関数に渡される引数を示すメッセージをコンソールにログに記録します。
monitorEvents(object[, events]) 指定したオブジェクトで指定されたイベントのいずれかが発生すると、イベント オブジェクトがコンソールに記録されます。
profile([name]) 省略可能な名前で JavaScript CPU プロファイル セッションを開始します。
profileEnd([name]) JavaScript CPU プロファイリング セッションを完了し、 結果をパフォーマンス ツールに表示します。
queryObjects(コンストラクター) 指定したコンストラクターによって作成されたオブジェクトの配列を返します。
table(data[, columns]) 指定したデータ オブジェクトの列見出しを含むテーブルとして書式設定されたオブジェクト データをログに記録します。
undebug(function) 関数が要求されたときにデバッガーが呼び出されないように、指定した関数のデバッグを停止します。
unmonitor(function) 指定した関数の監視を停止します。
unmonitorEvents(object[, events]) 指定したオブジェクトとイベントのイベントの監視を停止します。
values(object) 指定したオブジェクトに属するすべてのプロパティの値を含む配列を返します。

最近評価された式: $_

$_ は、最後に評価された式の値を返します。

構文:

$_

例 1

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、式 2+2を入力し、Enter キーを押します。

    式が評価され、結果が表示されます。 変数 $_ は、式の結果にも設定されます。

  3. と入力 $_し、 Enter キーを押します。

    $_ 変数が前の式の結果を返すコンソール ツール

例 2

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. 次のコードを コンソールに貼り付け、 Enter キーを押します。

    ["john", "paul", "george", "ringo"]
    

    評価された式は、名前の配列です。

  3. コンソールに次のコードを入力し、Enter キーを押します。

    $_.length
    

    以前に評価された4$_.length (名前の配列) を参照するため$_、式は評価され、コンソールに表示されます。 $_.length は、名前の配列の長さです。

  4. コンソールに次のコードを入力し、Enter キーを押します。

    $_
    

    $_ は常に、以前に評価された式を参照します。これは現在、数値 4 です。

    $_ の値は、以前に評価された式の値に変更されます

最近選択した要素または JavaScript オブジェクト: $0-$4

$0$1$2$3および は、 $4 最近選択した要素または JavaScript オブジェクトを返します。

$0 は、最後に選択した要素または JavaScript オブジェクトを返し、 $1 最後に選択した 2 番目の要素を返します。 、$1$2$3、および $4 変数は$0Elements ツール内で検査された最後の 5 つの DOM 要素、またはメモリ ツールで選択された最後の 5 つの JavaScript ヒープ オブジェクトへの履歴参照として機能します。

構文

$0

  1. DevTools を開くには、Web ページを右クリックし、[ 検査] を選択します。 または、 Ctrl + Shift + I (Windows、Linux) または Command + Option + I (macOS) を押します。 DevTools が開きます。

  2. [要素] ツールで、要素 (要素など) を<input>選択します。

  3. DevTools の下部 にある クイック ビュー パネルでコンソール ツールを開きます。

  4. コンソール ツールで「」と入力$0し、Enter キーを押します。

    変数は $0 、選択した <input> 要素を返します。

    コンソールで $0 コマンドを評価した結果

  5. 要素ツールで別の要素 (要素など) を<div>選択します。

  6. コンソール ツールで、「」と入力$0し、Enter キーを押します。

    $0 は、新しく選択された要素を指します。これは 要素です <div>

  7. $1」と入力して、Enter キーを押します。

    $1 は、前に選択した要素を <input> 参照します。これは要素です。

    $0 コマンドと $1 コマンドを評価した結果

クエリ セレクター: $(selector)

$(selector) は、指定した CSS セレクターと一致する最初の DOM 要素への参照を返します selector

この関数は document.querySelector() 関数に似ています。

を使用する jQuery などのライブラリを使用 $している場合、機能は上書きされ $ 、そのライブラリからの実装に対応します。

構文

$(selector, [parentElement])

例 1

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、「」と入力します$('input')。 CSS セレクターに一致する最初の input 要素が表示されます。

    $('input') は、Web ページ内の最初の要素への参照を返します

  3. 返された結果を右クリックし、[ 要素パネルで表示 ] を選択して DOM で検索するか、 スクロールしてビューに 移動してページに表示します。

例 2

関数は $()parentElement検索する親要素を指定する 2 番目のパラメーター を受け取ります。 パラメーターの既定値は です document。これは、Web ページ全体が既定で検索されることを意味します。 親要素を指定することで、Web ページの特定の部分内の要素を検索できます。

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、「」と入力します。$('input', $('ul'))

    最初の要素内で見つかった CSS セレクターに input 一致する最初 ul の要素は、retruned です。

    $('input', $('ul')) の結果

クエリ セレクターすべて: $$(selector, [startNode])

$$() は、指定された CSS セレクターに一致する要素の一覧を返します (例: document.querySelectorAll())。

この関数は document.querySelectorAll() に似ていますが、 ではなく、 要素をNodeList返しますarray

構文

$$(selector, [parentElement])

例 1

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、「」と入力します$$('button')<button> Web ページ内のすべての要素が表示されます。

    $$('button') の結果

例 2

この $$() 関数では、 parentElement検索する親要素を指定する 2 番目のパラメーター もサポートされています。 パラメーターの既定値は です document。これは、Web ページ全体が既定で検索されることを意味します。 親要素を指定することで、Web ページの特定の部分内の要素を検索できます。

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、「」と入力します$$('button', $('li.task'))。 最初<li class="task"><button>要素の子孫であるすべての要素が表示されます。

    $$('button', $('li.task')) の結果

XPath: $x(path, [startNode])

$x(path) は、指定した XPath 式 pathに一致する DOM 要素の配列を返します。

構文

$x(path, [parentElement])

例 1

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、「」と入力します$x("//li")<li> Web ページ内のすべての要素が表示されます。

    XPath セレクターの使用

例 2

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、「」と入力します$x("//li[button]")。 要素を <li> 含むすべての <button> 要素が表示されます。

    より複雑な XPath セレクターの使用

他のセレクター コマンドと同様に、 $x(path) 要素を検索する要素またはノードを指定する省略可能な 2 番目のパラメーター parentElementがあります。

clear()

clear() は、その履歴のコンソールをクリアします。

構文

clear()

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで履歴を作成するには、複数の JavaScript 式を入力します。 例:

    for (let i = 0; i < 10; i++) {
        console.log(i);
    }
    
  3. 履歴を消去するには、コンソール ツールで「」と入力clear()し、Enter キーを押します。

    clear() コマンドの結果、コンソールが空になり、

copy(object)

copy(object) は、指定したオブジェクトの文字列表現をクリップボードにコピーします。

構文

copy(object)

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで次のコードを入力し、Enter キーを押します。

    copy($$('*').map(element => element.tagName));
    

    コード スニペットは、 関数を使用して Web ページ内のすべての要素を $$(selector) 選択し、各要素のプロパティを tagName 配列にマップします。 次に、 関数を使用して配列がクリップボードに copy() コピーされます。

  3. クリップボードの内容をテキスト エディターに貼り付けます。 クリップボードの内容は、次のように、Web ページ内のすべての HTML タグの一覧です。

    ["HTML", "HEAD", "META", "TITLE", "LINK", "BODY", "H1", "FORM", "DIV", "LABEL", ...]
    

debug(function)

debug(function) は、その関数 function が呼び出されたときに、 Sources ツールで指定された関数内で一時停止します。

デバッガーが一時停止したら、コードをステップ実行してデバッグできます。

構文

debug(function)

  1. 新しいタブまたはウィンドウを開き、デバッグする JavaScript 関数を含むページに移動します。 たとえば、 TODO アプリ のデモ ページに移動します。

  2. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  3. コンソール ツールで、「」と入力しますdebug(updateList)

  4. レンダリングされた Web ページで、[タスクテキストの追加] フィールドに「test」と入力し、Enter キーを押して、新しい TODO 項目をリストに追加します。

    デバッガーは、ソース ツールのupdateList()関数内で一時停止します。

    デバッガーが updateList() 関数内で一時停止する

を使用して undebug(function) 関数の中断を停止するか、UI を使用してすべてのブレークポイントをオフにします。

ブレークポイントの詳細については、「ブレークポイント を使用してコードを一時停止する」を参照してください。

dir(object)

dir(object) は、指定したオブジェクトのすべてのプロパティ (など console.dir()) のオブジェクト スタイルの一覧を表示します。

この関数は console.dir()のエイリアスです。

構文

dir(object)

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、「」と入力document.headし、Enter キーを押します。

    要素の <head> HTML 表現が表示されます。

  3. Enter dir(document.head) キーを押し、 Enter キーを押します。

    要素のすべてのプロパティ <head> のオブジェクト スタイルの一覧が表示されます。

    'dir()' 関数を使用して 'document.head' をログに記録する

詳細については、コンソール API の console.dir() を参照してください。

dirxml(object)

dirxml(object)、 などのconsole.dirxml()要素ツールに表示されるように、指定したオブジェクトの XML 表現を出力します。

この関数は console.dirxml()と同じです。

構文

dirxml(object)

inspect(object/function)

inspect(element/function) は、 Elements ツールで指定された DOM 要素を開いて選択するか、 ソース ツールで指定した JavaScript 関数を選択します。

  • DOM 要素の場合、この関数は Elements ツールで 指定した DOM 要素を開いて選択します。
  • JavaScript 関数の場合、この関数は ソース ツールで指定された JavaScript 関数を開きます。

構文

inspect(element/function)

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、「」と入力inspect(document.body)し、Enter キーを押します。

    [要素] ツールが開き、<body>要素が選択されます。

    inspect() を使用して要素を検査する

検査する関数を渡すと、関数によって ソース ツールで Web ページが開き、検査が行われます。

getEventListeners(object)

getEventListeners(object) は、指定したオブジェクトに登録されているイベント リスナーを返します。

戻り値は、登録されている各イベント型 (や keydownなどclick) の配列を含むオブジェクトです。 各配列内の項目は、型ごとに登録されたリスナーを記述するオブジェクトです。

構文

getEventListeners(object)

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、「」と入力getEventListeners($('form'))し、Enter キーを押します。

    最初 <form> の要素に登録されているイベント リスナーが表示されます。

    getEventListeners(form) を使用した出力

指定したオブジェクトに複数のリスナーが登録されている場合、配列には各リスナーのメンバーが含まれます。 次の図では、イベントの要素clickdocument 2 つのイベント リスナーが登録されています。

'click' イベントの 'document' 要素に登録されている複数のイベント リスナー

keys(object)

keys(object) は、指定したオブジェクトに属するプロパティの名前を含む配列を返します。

同じプロパティの関連する値を取得するには、以下の values(object)を参照してください。

構文

keys(object)

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、次のコードを入力し、Enter キーを押します。

    var player1 = {"name": "Ted", "level": 42}
    

    上記のコード スニペットは、 という名前 player1のグローバル名前空間にオブジェクトを定義します。このオブジェクトには 2 つのプロパティが含まれています。

  3. オブジェクトに属するプロパティの名前をplayer1取得するには、コンソール ツールで「」と入力keys(player1)し、Enter キーを押します。

    keys() 関数の結果

  4. オブジェクトに属するプロパティの値をplayer1取得するには、コンソール ツールで「」と入力values(player1)し、Enter キーを押します。

    values() 関数の結果

monitor(function)

monitor(function) は、指定された関数が呼び出されるたびにコンソールにメッセージをログに記録します。 メッセージは、関数名と、関数に渡される引数を示します。

構文

monitor(function)

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、次のコードを入力し、Enter キーを押します。

    function sum(x, y) {
      return x + y;
    }
    

    上記のコード スニペットでは、 という名前 sumの関数が定義されています。これは、2 つの引数を受け入れます。

  3. 関数の監視をsum開始するには、コンソール ツールで「」と入力monitor(sum)し、Enter キーを押します。

  4. 関数を呼び出すには、Enter キーを押 sum(1, 2) して Enter キーを押 します。 関数が呼び出され、引数が関数に sum 渡されたことを示すメッセージが表示されます。

    monitor() 関数の結果

監視を終了するには、 を使用します unmonitor(function)

monitorEvents(object[, events])

monitorEvents(object[, events]) 指定したオブジェクトで指定したイベントが発生するたびに、イベント オブジェクトをコンソールにログに記録します。

監視する 1 つのイベント、イベントの配列、またはイベントの定義済みのコレクションにマップされるジェネリック イベントの種類のいずれかを指定できます。

構文

monitorEvents(object[, events])

例 1

1 つのイベントを監視するには:

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、次のコードを入力し、Enter キーを押します。

    monitorEvents(window, "resize");
    

    前のコード スニペットは、ウィンドウ オブジェクトのすべてのサイズ変更イベントを監視します。

  3. たとえば、DevTools を大きくしたり小さくしたりして、ウィンドウのサイズを変更します。 サイズ変更イベントは コンソール ツールに表示されます。

    ウィンドウサイズ変更イベントの監視

例 2

複数のイベントを監視するには:

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、次のコードを入力し、Enter キーを押します。

    monitorEvents(window, ["resize", "scroll"]);
    

    前のコード スニペットでは、ウィンドウ オブジェクトのイベントとscrollイベントの両方resizeを監視するイベント名の配列を定義しています。

  3. たとえば、ウィンドウのサイズを短くして、レンダリングされた Web ページでスクロールします。 コンソール ツールにイベントのサイズ変更とスクロールが表示されます。

    ウィンドウのサイズ変更とスクロール イベントの監視

例 3

定義済みのイベント セットのいずれかを使用して、イベントのコレクションを指定することもできます。 次の表は、使用可能なイベントの種類と関連するイベント マッピングを示しています。

イベントの種類 対応するマップされたイベント
mouse "click", "dblclick", "mousedown", "mousemove", "mouseout", "mouseover", "mouseup", "mousewheel"
key "keydown"、"keypress"、"keyup"、"textInput"
touch "touchcancel"、"touchend"、"touchmove"、"touchstart"
control "blur", "change", "focus", "reset", "resize", "scroll", "select", "submit", "zoom"
  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソール ツールで、次のコードを入力し、Enter キーを押します。

    monitorEvents(window, "key");
    

    前のコード スニペットは、ウィンドウ オブジェクト上のすべてのキーボード イベントを監視します。

  3. レンダリングされた Web ページで、任意のキーを押します。 キーボード イベントは コンソール ツールに表示されます。

    主要なイベントの監視

profile([name])

profile([name]) は、省略可能な名前で JavaScript CPU プロファイル セッションを開始します。

プロファイルを完了し、 パフォーマンス ツールに結果を表示するには、 profileEnd([name])を呼び出します。

構文

profile([name])

  1. プロファイルするページを新しいタブまたはウィンドウで開きます。 たとえば、 低調なアニメーション のデモ ページに移動します。

  2. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  3. プロファイリングを開始するには、 コンソール ツールで「」と入力 profile("My profile)し、 Enter キーを押します。

  4. プロファイリングを停止するには、しばらくしてから、「」と入力 profileEnd("My profile")し、 Enter キーを押します。

    プロファイルの結果は 、パフォーマンス ツールに表示されます。

    profile() 関数の結果

複数のプロファイルを同時に作成でき、各プロファイルを作成順序で終了する必要はありません。 たとえば、次のコードでは、2 つのプロファイルを作成し、逆の順序で終了します。

profile('A');
profile('B');
profileEnd('B');
profileEnd('A');

profileEnd([name])

profileEnd([name]) は、JavaScript CPU プロファイリング セッションを完了し、 結果をパフォーマンス ツールに表示します。

この関数を呼び出すには、 profile([name]) 関数を実行している必要があります。

構文

profileEnd([name])

詳細については、上記の profile([name])を参照してください。

queryObjects(コンストラクター)

queryObjects(constructor) は、指定したコンストラクターによって作成されたオブジェクトの配列を返します。

queryObjects() スコープは、コンソールで現在選択されているランタイム コンテキスト です

構文

queryObjects(constructor)

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. HTML 要素のすべてのインスタンスを返すには、コンソール ツールで「」と入力queryObjects(HTMLElement)し、Enter キーを押します。

    queryObjects() 関数の結果

その他の例:

  • Web ページでオブジェクトを使用している場合は、 Promise を使用PromisequeryObjects(Promise)してオブジェクトのすべてのインスタンスを返します。
  • Web ページで JavaScript クラスを使用している場合は、 をClassName使用queryObjects(ClassName)して クラスのすべてのインスタンスを返します。

table(data[, columns])

table(data[, columns]) は、指定されたデータ オブジェクトの列見出しを含むテーブルとして書式設定されたオブジェクト データをログに記録します。

この関数は console.table()のエイリアスです。

構文

table(data[, columns])

ユーザーの名前の一覧をテーブルとして表示するには、コンソールで次の手順を 実行します

  1. Ctrl + Shift + J (Windows、Linux) または Command + Option + J (macOS) を押します。 コンソール ツールが DevTools で開き、Web ページの横に表示されます。

  2. コンソールで次のコードを入力し、Enter キーを押します。

    var names = {
      0: {
        firstName: "John",
        lastName: "Smith"
      },
      1:  {
        firstName: "Jane",
        lastName: "Doe"
      }
    };
    

    上記のコード スニペットは、 という名前 namesのグローバル名前空間にオブジェクトを定義します。このオブジェクトには 2 つのプロパティが含まれています。

  3. オブジェクトをnamesテーブルとして表示するには、コンソールで「」と入力table(names)し、Enter キーを押します。

    table() 関数の結果

undebug(function)

undebug(function) は、指定した関数のデバッグを停止します。そのため、関数の実行時にデバッガーは関数内で一時停止されなくなります。

詳細については、上記の debug(function)を参照してください。

構文

undebug(function)

unmonitor(function)

unmonitor(function) は、指定された関数の監視を停止します。

詳細については、上記 の monitor(function)を参照してください。

構文

unmonitor(function)

unmonitorEvents(object[, events])

unmonitorEvents(object[, events]) は、指定されたオブジェクトとイベントのイベントの監視を停止します。

詳細については、上記 の monitorEvents(object[, events])を参照してください。

構文

unmonitorEvents(object[, events])

values(object)

values(object) は、指定したオブジェクトに属するすべてのプロパティの値を含む配列を返します。

同じプロパティの関連付けられたキーを取得するには、上記の keys(object)を参照してください。

構文

values(object)

上記の keys(object)の例を参照してください。

関連項目

注:

このページの一部は、 Google によって 作成および共有され、 クリエイティブ・コモンズ属性 4.0 国際ライセンスに記載されている条件に従って使用される作業に基づく変更です。 元のページは ここに あり、 Kayce Basques (テクニカル ライター、Chrome DevTools & Lighthouse) によって作成されています。

クリエイティブ・コモンズ・ライセンス この作品は 、クリエイティブ・コモンズ属性4.0国際ライセンスに基づきライセンスされています