背景
JSでデバックのためにJSON.stringify()を使ったら発生した。
printデバックの是非は置いておいて、この事象の意味と、なぜ発症したのか、対象方法についてメモする。
意味
「循環参照しているJSONを変換しようとしている」って意味らしい。
Google翻訳より。。。
意味は分かった。
循環参照しているオブジェクトを渡したつもりはないのだが、循環参照構造になっているらしい。。。
対処方法
回避方法はあるみたいだが、面倒くさいから、npmモジュールのjson-cyclic
入れて対応する。
下記の記述で対応可能。
JSON.stringify(decycle(XXXX))
対応した結果
たしかに、表示できた。
よくよく見たら、自分が想定してないデータを見ようとしていただけで、ちゃんと表示したデータを指定したらdecycleは必要なかった。。。
知識が溜まったから、良しとする?
不要だと知ったあとのやるせなさがなんとも言えない。。。
参考サイト
JSON.stringifyで`TypeError: Converting circular structure to JSON`というエラーが出た時の対処法 - Qiita