__proto__プロパティ周りでJavaScript実装によっていろいろ挙動が異なることが分かったのでメモ。 以下のブラウザ(エンジン)で調べた Firefox 9.0.1 (Gecko 20111220165912) GoogleChrome 17.0.963.12 dev-m (v8 ???) Opera 12.00 alpha (Presto 2.10.238) また、GoogleChromeとNode.jsでの結果は同じだった。 var bind = Function.prototype.bind, hasOwn = bind.bind(bind.call)(Object.prototype.hasOwnProperty), proto = Object.getPrototypeOf; Object.prototype の __proto__ Object.prototype の