JavaScript Object.defineProperty
As requested by tomdemuyt. I'm posting my comments as an answeR:

You usually only use defineProperty in very specific cases. (let's say you wanted validation on age?) - in your case - I would not use it.

Op then asked:


  offhand can you think of anything outside of validation were it might be useful to use defineProperty?


Plenty of reasons:


non-enumerable properties, 
frozen properties, 
computed properties, 
proxies (Create an object based on another object and mirror calls + observe). 


There are a lot of good use cases - they're just not very common in the web because of IE8 yet. In your case (age) I would not use Object.defineProperty.