Write : defineProperty vs Attribute (v2)

Revision 2 of this benchmark created on


Setup

function AttributeValue(value){
                this.value = value;
        }
    
        function DefinePropertyValue(value){
                Object.defineProperty(this, 'value', {
                  value: value
                });
        }
    
        function DefinePropertyGetSet(value){
                Object.defineProperty(this, 'value', {
                  get:function(){ return value },
                  set:function(newValue){ value = newValue}
                });
        }
    
        function build(Constructor){
                return new Constructor(new Constructor(new Constructor(new Constructor)));
        }
    
    
    
        var attributeValue = build(AttributeValue);
        var definePropertyValue = build(DefinePropertyValue);
        var definePropertyGetSet = build(DefinePropertyGetSet);
    
    
    
    function read(value){
        return value.value
    }

Test runner

Ready to run.

Testing in
TestOps/sec
Attribute
build(AttributeValue);
 
ready
Object.defineProperty : get set
build(DefinePropertyGetSet);
ready
Object.defineProperty : value
build(DefinePropertyValue);
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.