Non-Enumerable Write-Only Accessor

    Define a non-enumerable write-only accessor.

    Usage

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

    setNonEnumerableWriteOnlyAccessor( obj, prop, setter )

    Defines a non-enumerable write-only accessor.

    var obj = {};
    var val = '';
    
    function setter( v ) {
        val = v;
    }
    
    setNonEnumerableWriteOnlyAccessor( obj, 'foo', setter );
    
    obj.foo = 'boop';
    
    var bool = ( val === 'boop' );
    // returns true
    
    ## Notes
    • Non-enumerable write-only accessors are non-configurable.

    Examples

    var setNonEnumerableWriteOnlyAccessor = require( '@stdlib/utils/define-nonenumerable-write-only-accessor' );
    
    function Foo( secret ) {
        if ( !(this instanceof Foo) ) {
            return new Foo( secret );
        }
        setNonEnumerableWriteOnlyAccessor( this, 'secret', setter );
        return this;
    
        function setter( v ) {
            secret = v;
        }
    }
    
    var foo = new Foo( 'beep' );
    
    foo.secret = 'boop';