2016-09-27 9 views
0

Firebugはコンソールのすべての行を表示しません。コンソールのFirebug複数行が正しく動作しない

var arr=[4,3,2]; 

console.log("console"); 
arr; 

結果はそれがあるべきように2つのラインである:

console 
[4, 3, 2] 

が、それは違うためだとき、一つだけの行が最後に表示されます。

私のコードは次のようになります場合は
arr; 
console.log("console"); 

結果:

console 

問題がすべて表示され、コンソールのみを使用すると、配列/オブジェクト/関数呼び出し前に追加の出力行を受け取ることができます。それ以外の出力はスキップされます。 Firebugで実際に何もスキップせずに入力=出力結果をコンソールに出力する方法はありますか?それができない場合は、それを行うことができる別のツール(jsコンパイラを使用して)ですか?

+1

評価された_値のみが印刷されます。あなたの2番目の例では、これがlog文です(これは印刷され、 'undefined'に評価されます)。マルチラインスクリプトのすべての単一行が出力を生成するとはどういうことでしょうか?本当に何かを出力したい場合は、すでに知っている 'console.log(arr)'のシステムを使用してください。それは 'arr;を行うのとは異なり、実際には何もしません。 – vlaz

+0

@vlazはい、ツールが1行を印刷できるのであれば、複数の行を覚えていて1つずつ印刷することができます。少なくともその種の機能を実現することは可能です。私は、すべての配列、関数の戻り値などに 'console.log'を追加する必要なしにdebbugingの目的を助けたいと思います。 – norbidrak

+0

しかし、100行の関数コードをコンソールで実行できます。あなたは_本当にそれらのすべてのものの出力を見たいですか?ループがあるとします。比較的シンプルなコードからでも1000行以上の出力に簡単に到達することができます。また、これはIOであるため、コードがどのように動作するかを変更することができます。各行が印刷されるまで待つ必要があります。コードが遅くなり、状況によって意図しない副作用が発生する可能性があります。 – vlaz

答えて

0

評価されたスクリプトの戻り値をFirebugおよび他のブラウザ開発者ツールが出力します。戻り値は1つしかないので、1つの出力しか得られません。

出力を増やしたい場合は、console.log()のようなConsole APIのメソッドを使用する必要があります。

コンソールを使用してコードをデバッグする代わりに、代わりにJavaScriptデバッガを使用することができます。 Firebugでは、デバッガはScript panelの中で利用できます。
これにより、ある行でスクリプトの実行を停止し、コードのその特定のポイントにあるすべての変数の値を見ることができます。

+0

デバッグは、サイト上のスクリプトファイルのみをデバッグできるため、何の助けにもなりません。私は主にエクササイズするために、高速のライブスクリプトを書くことを目指していました。値や物事をチェックするのに時間を節約できるツールがないことはあまりにも悪いことです。 – norbidrak

+0

前述のように、コンソールに何かを出力する方法は、Console APIを使用することです。 @vlazは言ったように 'arr;'の代わりに 'console.log(arr);を書くだけです。 –

関連する問題