Please note that Object.Watch and Object.Observe are both deprecated now (as of Jun 2018).
I was looking for an easy way to monitor an object
you can use Object.defineProperty.
watch the property bar in foo
bar
foo
Object.defineProperty(foo, "bar", { get: function (val){ //some code to watch the getter function }, set: function (val) { //some code to watch the setter function } })