Write-Only Accessor

Define a write-only accessor.

Usage

var setWriteOnlyAccessor = require( '@stdlib/utils/define-write-only-accessor' );

setWriteOnlyAccessor( obj, prop, setter )

Defines a write-only accessor.

var obj = {};
var val = '';

function setter( v ) {
    val = v;
}

setWriteOnlyAccessor( obj, 'foo', setter );

obj.foo = 'boop';

var bool = ( val === 'boop' );
// returns true
## Notes
  • Write-only accessors are enumerable and non-configurable.

Examples

var setWriteOnlyAccessor = require( '@stdlib/utils/define-write-only-accessor' );

function Foo( secret ) {
    if ( !(this instanceof Foo) ) {
        return new Foo( secret );
    }
    setWriteOnlyAccessor( this, 'secret', setter );
    return this;

    function setter( v ) {
        secret = v;
    }
}

var foo = new Foo( 'beep' );

foo.secret = 'boop';