1. ホーム
  2. javascript

[解決済み] JavaScriptのtoString()関数をオーバーライドして、デバッグ用に意味のある出力を提供することは可能でしょうか?

2022-07-15 08:15:05

質問

私が console.log() を実行すると、次のような出力が表示されます。 [object Object] と出力されるだけで、それがどんなオブジェクトなのか(あるいはどんなタイプのオブジェクトなのかさえ)把握するのにあまり役に立ちません。

C#では、私はオーバーライドするのに慣れています。 ToString() をオーバーライドして、オブジェクトのデバッガ表現をカスタマイズすることができます。JavaScript でできる同様のことはありますか?

どのように解決するのですか?

を上書きすることができます。 toString をJavascriptで上書きすることもできます。例を見てください。

function Foo() {}

// toString override added to prototype of Foo class
Foo.prototype.toString = function() {
  return "[object Foo]";
}

var f = new Foo();
console.log("" + f); // console displays [object Foo]

参照 この の議論を参照してください。