3

JS を学ぶのはでこぼこ道です... コード内で何が起こっているのかを理解したいのでconsole.log();、私の友達のようです。

ときどき、どこからエラーが発生したのかわからないことがあります (または、私があまりにもばかげているかもしれません)。そこで、アプリ スタックをより適切にログに記録することを考えました。この単純だが複雑な問題の答えを見つけようとしました:

どうやってするか?ほかにもconsole.log()

たとえば、 が呼び出されている関数(コンストラクター)の名前を取得する際に、問題があることが証明されています。console.log

function SomeFunction(argument1,argument2) {
    console.log(this+'> 01 message');
    console.log(this.name+'> 02 message');
    console.log(this.constructor+'> 03 message');
    console.log(this.constructor.name+'> 04 message');
    console.log(this.prototype+'> 05 message');
    console.log(this.constructor.method+'> 06 message');
}

SomeFunction.prototype.sayHello = function(} {
    console.log(this+'> 01 says Hello');
    console.log(this.name+'> 02 says Hello');
    console.log(this.constructor+'> 03 says Hello');
    // and so on... //
}

そう。どちらが正しいですか?SomeFunction.constructor.nameは機能していますが、この構文は毎回使用するにはかなり長いので、次のようなものです

var fn = this.constructor.name理にかなっていますが、それは非効率的です。

コードから適切なログ情報を抽出するにはどうすればよいですか?

参考までに: この単純なトピックについていくつかの本を調べましたが、どれもそれについて何も述べていません。

4

1 に答える 1

0

開発者ツール (F12、control-I) を使用するか、firebugを取得して、コードのシングルステップ実行、変数の調査と変更、css の編集をお楽しみください。これにより、JavaScript の学習経験が劇的に向上します...

于 2012-07-09T19:49:53.143 に答える