Skip to content

Handle circular references #44

@pcorpet

Description

@pcorpet

The following code raises an error:

const loupe = require('loupe');
const a = {};
a['b'] = a;
loupe.inspect(a)

I would expect it to display:

{ b: [Circular] }

but for now it raises:

Uncaught RangeError: Maximum call stack size exceeded
    at _arrayWithHoles (./chai/node_modules/loupe/loupe.js:406:26)
    at _slicedToArray (./chai/node_modules/loupe/loupe.js:403:11)
    at inspectProperty (./chai/node_modules/loupe/loupe.js:625:16)
    at inspectList (./chai/node_modules/loupe/loupe.js:587:27)
    at inspectObject (./chai/node_modules/loupe/loupe.js:920:27)
    at Object.inspect (./chai/node_modules/loupe/loupe.js:1150:13)
    at inspectProperty (./chai/node_modules/loupe/loupe.js:636:20)
    at inspectList (./chai/node_modules/loupe/loupe.js:587:27)
    at inspectObject (./chai/node_modules/loupe/loupe.js:920:27)
    at Object.inspect (./chai/node_modules/loupe/loupe.js:1150:13)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions