# propertySymbolsIn > Return an array of an object's own and inherited [symbol][@stdlib/symbol/ctor] properties.
## Usage ```javascript var propertySymbolsIn = require( '@stdlib/utils/property-symbols-in' ); ``` #### propertySymbolsIn( obj ) Returns an `array` of an object's own and inherited [symbol][@stdlib/symbol/ctor] properties. ```javascript var symbols = propertySymbolsIn( [] ); ```
## Notes - In contrast to the built-in `Object.getOwnPropertySymbols()`, if provided `null` or `undefined`, the function returns an empty `array`, rather than throwing an error.
## Examples ```javascript var hasSymbolSupport = require( '@stdlib/assert/has-symbol-support' ); var Symbol = require( '@stdlib/symbol/ctor' ); var propertySymbolsIn = require( '@stdlib/utils/property-symbols-in' ); var hasSymbols; var symbols; var obj; hasSymbols = hasSymbolSupport(); function Foo() { if ( hasSymbols ) { this[ Symbol( 'beep' ) ] = 'boop'; } return this; } if ( hasSymbols ) { Foo.prototype[ Symbol( 'foo' ) ] = 'bar'; } obj = new Foo(); symbols = propertySymbolsIn( obj ); console.log( symbols ); ```