1

オブジェクトの一部のメタデータをオンにできるように、JavaScript に環境フラグがありませんでしたか。

代わりに、デバッグ中に次のようになります。

[object Object]

変数名と型を取得します。

[foo String]

なぜこれが不可能なのですか?

4

3 に答える 3

0

デバッグ方法を変更するのではなく、「グローバルフラグ」を反転するだけについての質問に直接答えるには:

デバッグ中にのみこれを行うと仮定すると、一時的にオーバーライドしObject.prototype.toStringて、オブジェクトの JSON 表現を返すことができます。

Object.prototype.toString = function () { return JSON.stringify(this); };

次に、ブラウザ コンソールで次の操作を行います。

var obj = { a: 42 };
console.log('My object: ' + obj);

あなたに与えます:

私のオブジェクト: {"a":42}

これがあなたの質問に答えたとしても、ベース メソッドのグローバル オーバーライドはお勧めしません。壊滅的な問題を引き起こす可能性があるからです。他の人がコメントで提案しているように、単体テストとブレークポイント + デバッグに頼ってみてください。

于 2015-01-18T08:22:16.453 に答える
0

JSON.stringify探しているものかもしれませんが、変数の名前はわかりません.JavaScriptはサードパーティのツールなしではそれを行うことができません.

オブジェクトのコンストラクター関数には、そのプロパティを使用して到達できますがconstructor、コンストラクター プロパティは書き込み可能であるため、これによる保証はありません。

debuggerまた、ステートメントを確認することもできます。

于 2015-01-18T08:04:55.310 に答える