Object.observe withdrawn from TC39
In my experience, observing individual properties on model objects just isn't very useful in real world apps. Cocoa has long offered "key-value observing" (KVO) for this purpose, but other mechanisms like notifications tend to be more practical, usually because listeners need some context in order to do the best thing in response to a change, and an individual property change won't carry any of that context.Here's a practical example... Imagine an editor where an on-screen element is deleted. The controller might do a bunch of stuff such as:  element.parent = nil
  scene.clearReferencesToElement(element)
  container.delete(element)
  self.selection = []

If there's a listener on "container", it will get notified even before the selection was cleared. That's probably not the intention.If we know that's going to happen, we could move the selection manipulation before the container access... But then we have fragile code that depends on implicit behavior in a model class. Always better to send an explicit event.