Both of these obviously do similar things but my question is why is one on the prototype and one on the Object?
For example, both of these called differently. Is there a logical reason why this is the case?
var o = {name: "value"}
o.hasOwnProperty("name") //true
Object.getOwnPropertyNames(o); //name
//Couldn't the above have been coded so we can run o.getOwnPropertNames();
Thanks.