isCircularPlainObject
Test if a value is a plain object containing a circular reference.
Usage
var isCircularPlainObject = require( '@stdlib/assert/is-circular' );
isCircularPlainObject( value )
Tests if a value
is a plain object
containing a circular reference.
var obj = {
'beep': 'boop'
};
var bool = isCircularPlainObject( obj );
// returns false
obj.self = obj;
bool = isCircularPlainObject( obj );
// returns true
Examples
var isCircularPlainObject = require( '@stdlib/assert/is-circular' );
var obj1 = {
'a': 'beep',
'b': {
'c': 'boop'
}
};
obj1.b.self = obj1;
var bool = isCircularPlainObject( obj1 );
// returns true
var obj2 = {
'a': {},
'b': obj1
};
bool = isCircularPlainObject( obj2 );
// returns true
var arr = [ 1, 2, 3 ];
arr.push( arr );
bool = isCircularPlainObject( arr );
// returns false
var obj3 = {
'beep': 'boop'
};
bool = isCircularPlainObject({
'a': obj3,
'b': obj3
});
// returns false
bool = isCircularPlainObject( {} );
// returns false
bool = isCircularPlainObject( null );
// returns false