Поигрался с Символами из ES7, офигенная тема, теперь мы можем срать в Object.prototype и не боятся наступить на мину
Object.prototype[Symbol.referenceLength] = function () {
return Object.keys(this).length;
};
var foo = {a: 1, b: 2};
foo::length() // 2
Вообще ES7 делает качественный скачок в развитии языка, что не может не радовать.