特定のオブジェクトのみで、結果を使用console.log
または印刷するとutil.inspect
、数値1
または2
結果として得られます。
1
印刷されたオブジェクトが数字やだけではない場合、どうすればよい2
ですか? デバッガー インスペクターを使用して属性と関数を確認します。また、コードを実行してオブジェクトのすべてのメンバーを確認することもできます。
注:オブジェクトを複製/コピーしようとしましたが、同じ動作をしています。そのオブジェクトの何が問題なのですか?
このライブラリを使用しています: https://hexo.io/
この機能を使用しようとしたとき: https://hexo.io/api/renderer.html
コード例:
hexo.extend.renderer.register('some', 'html', function (data, options, callback) {
console.log("Data");
console.log(data); // It works (object is printed sucessfully)
console.log("Options");
console.log(options); // I got "2" printed.
// something unrelated code to use the callback
}, false);
私が言ったように、オブジェクトoptions
にはいくつかの異なるメンバーがあり、util.inspect
深度やその他のパラメーターを指定した場合でも、 と同じ/類似の動作です。
私の目的は、なぜそれが起こるのか、そしてそれを修正する方法を見つけることです.
編集:
さらに、 を使用してこのオブジェクトを JSON にシリアル化しようとするとJSON.stringify
、次の例外が返されます。
Unhandled rejection TypeError: Converting circular structure to JSON
at Object.stringify (native)