@cypress/what-is-circular

Like is-circular, but returns the path to the first circular reference found.

Usage no npm install needed!

<script type="module">
  import cypressWhatIsCircular from 'https://cdn.skypack.dev/@cypress/what-is-circular';
</script>

README

what-is-circular Build Status

Like is-circular, but returns the path to the first circular reference found.

Installation

npm install @cypress/what-is-circular

Usage

whatIsCircular(obj)

Returns an array that contains the path to the first circular reference found, or undefined if no circular reference is found.

Example

var whatIsCircular = require('@cypress/what-is-circular')

var circularObj = {
  foo: 1,
  bar: 2
}
// qux.baz is the circular reference
circularObj.qux = {
  baz: circularObj
}

whatIsCircular(circularObj) // ['qux', 'baz']

var obj = {
  foo: 1,
  bar: 2,
  qux: 3
}

whatIsCircular(obj) // undefined

License

MIT

Thanks

Thanks to @tjmehta's is-circular for providing the tests and README for this project.

Thanks to @angus-c's just-is-circular for contributing additional tests.