# Read-Only
> [Define][@stdlib/utils/define-property] a **read-only** property.
## Usage
```javascript
var setReadOnly = require( '@stdlib/utils/define-read-only-property' );
```
#### setReadOnly( obj, prop, value )
[Defines][@stdlib/utils/define-property] a **read-only** property.
```javascript
var obj = {};
setReadOnly( obj, 'foo', 'bar' );
obj.foo = 'boop';
// throws 
```
    
## Notes
-   Read-only properties are **enumerable** and **non-configurable**.
## Examples
```javascript
var setReadOnly = require( '@stdlib/utils/define-read-only-property' );
function Foo( name ) {
    if ( !(this instanceof Foo) ) {
        return new Foo( name );
    }
    setReadOnly( this, 'name', name );
    return this;
}
var foo = new Foo( 'beep' );
try {
    foo.name = 'boop';
} catch ( err ) {
    console.error( err.message );
}
```
[@stdlib/utils/define-property]: https://www.npmjs.com/package/@stdlib/utils/tree/main/define-property