Object.defineProperty(Number.prototype, 'foo', { get: function () { return this } }) console.log(10.5.foo) console.log(10..foo) // 0 in IE9! console.log(10.0.foo) // 0 in IE9! console.log(10.01.foo) console.log((10).foo) // 0 in IE9! var x = 10 console.log(x.foo) // 0 in IE9!
Может ли кто-нибудь объяснить такое поведение и/или предложить обходной путь?