インタープリターからPythonコードを書くとき、dir()
と入力して、現在のスコープで定義されている名前のリストを作成できます。プログラムで同じ情報を取得するにはどうすればよいですか。 firebug、chrome consoleなどのようなインタラクティブコンソールを使用してブラウザからJavascriptコードを開発するとき?
ChatZillaのコードには、これを実行する関数がいくつかあります。ライセンスを適切にチェックして、それらを取り除いてどこでも使用できるかどうかを確認する必要があります。
関連する関数は http://hg.mozilla.org/chatzilla/file/59b46c0bf716/js/lib/utils.js#l136dumpObject
およびdumpObjectTree
Objectには、次のような「keys」メソッドがあります。
Object.keys(object)
ただし、これはオブジェクト自体のプロパティとメソッドのみを返します。
オブジェクトのすべてのプロパティとメソッドを一覧表示するには、2つの可能性があります。
1。 FirefoxおよびFirefox用のFirebugコンソールのconsole.dir(object)メソッド
2。 Googleのdir(object)メソッドChrome開発ツール。
簡単な解決策が必要な場合は、これでうまくいく可能性があります。
function dir(object) {
stuff = [];
for (s in object) {
stuff.Push(s);
}
stuff.sort();
return stuff;
}
Google Chrome開発者ツールコンソールには事前定義されたディレクトリがあります: https://developers.google.com/chrome-developer-tools/docs/console
Firebugにはconsole.dirがあります: http://getfirebug.com/logging
グローバル変数は、簡単にアクセスできるオブジェクト(window
)に保持されているため、簡単に検査/反復できます。 (Glenjaminによって提案された関数のようなものを使用して)
一方、関数またはクロージャで定義されたローカル変数を検査する方法はわかりません。これが可能であれば、少なくともブラウザ/コンソールに固有のものになると思います。
よくあなたはオブジェクトがそれ自身のプロパティのように含まれているのを見ることができます:それはグーグルだけでなくどんなコンソールでも働くことができますchromeウェブブラウザはimgを探します ここに画像の説明を入力してください コンソール.dir(obj);ここのリンク: https://developers.google.com/web/tools/chrome-devtools/console/console-reference