Object.keys vs hasOwnProperty
JavaScript performance comparison
Preparation code
<script>
var obj = {a:1,b:2,c:3,d:4,e:5,f:6,g:7,h:8,i:9,j:10};
Object.defineProperty( obj, 'z', {value:26,enumerable:false} );
var keys;
var i;
var name;
</script>
<script>
Benchmark.prototype.setup = function() {
keys = null;
};
</script>
Test runner
Warning! For accurate results, please disable Firebug before running the tests. (Why?)
Java applet disabled.
| Test | Ops/sec | |
|---|---|---|
hasOwnProperty |
|
pending… |
Object.keys |
|
pending… |
Object.keys with forEach |
|
pending… |
Compare results of other browsers
Revisions
You can edit these tests or add even more tests to this page by appending /edit to the URL. Here’s a list of current revisions for this page:
- Revision 1: published
- Revision 2: published
- Revision 4: published by John-David Dalton and last updated
2 comments
bullshit, whenever you can - use Object.keys, http://jsperf.com/object-keys-vs-hasownproperty
ooops, wrong tab :)