<script> "use strict"; var ob={ set i(p){ this.y=p;}, get i(){ return this.y;} } Object.defineProperty(ob, "y", {value: null,enumerable: false, writable: true}); alert(ob.i) alert(Object.keys(ob)) </script>