2016-05-03 51 views
236

Google Chromeのデベロッパーツールで、要素を選択すると、選択した要素の隣に==$0が表示されます。どういう意味ですか?

Screenshot

+18

:$ 0は、実行時に

setTimeout(() => console.log($0), 0); // $0 is not defined 

例は動作しません。任意のノードを選択し、コンソールに '$ 0'と書き込んでみてください) – deadlock

+25

非常に混乱します。誰かがスクリプトタグに入れるのを忘れた、いくつかのjavascriptを書いたようです。私は自分のコードでどこが乱れていたのかを把握するのに十分時間を費やしました... – Kip

+1

以下を確認してくださいhttps://developer.chrome.com/devtools/docs/commandline-api#0-4 – Muk

答えて

220

それは最後に選択されたDOMノードのインデックスです。 Chromeは、選択した各DOMノードにインデックスを割り当てます。したがって、$0は常に最後に選択したノードを指し、$1はそれ以前に選択したノードを指します。最も最近選択されたノードのスタックのように考えてください。

例として、ここで、次の

<div id="sunday"></div> 
<div id="monday"></div> 
<div id="tuesday"></div> 

を考えるあなたは次のようにidを取得します、デベロッパーツールのコンソールを開き、この順で#sunday#monday#tuesdayを選択:

$0 -> <div id="tuesday"></div> 
$1 -> <div id="monday"></div> 
$2 -> <div id="sunday"></div> 

注: ノードがスクリプト(またはコンソール)で選択可能であることを知ることは有益でしょう。ノード要素を選択するだけで、ノードを選択して実行することができます。

angular.element($0).scope() 

Voilaコンソールからノードスコープにアクセスできます。

+7

これの使用/利点は何ですか? –

+3

私はそれがデバッグに役立つと信じています。シンプルなセレクタを使用して検査対象の要素にアクセスする機能は、デバッグ中の多くの状況に役立ちます。 – deadlock

+5

UIで '== $ 0'と表示されているのは何ですか? '$ 0'について知っている人は、それがどの要素であるかをすでに知っているでしょうし、そうでない人にとっては意味がありません。 –

50

$ 0は最も最近選択された要素またはJavaScriptオブジェクトを返します。 $ 1は2番目に最近選択されたものを返します。

参照してください:ここCommand Line API Reference

+6

これは正しいですが、@ deadlockの答えはより包括的です。 –

16

他の回答は明らかにそれがその使用を説明したいとmean.I何をするかを説明しました。

elementsタブで要素を選択し、クロムのconsoleタブに切り替えることができます。 $0 or $1などの数字を入力してEnterキーを押すと、コンソールにその要素が表示されます。

FYI

screenshot of chrome dev tools

1

:それは選択されたDOMノードIDです

Chrome console

+0

これは質問に対する答えを提供しません。批評をしたり、著者の説明を求めるには、投稿の下にコメントを残してください。 - [レビューから](/レビュー/低品質の投稿/ 17880240) –

関連する問題