I need to know why is the $watch function used if the AngularJS automatically creates a watch for every model (ng-model) that is created.
(When I say model, I refer to a value in a controller declared like `$scope.value = "somethign" edit-> that is attached to the view by {{}} or ng-model)
My guess is:
1) It is useful to create complex actions when a change is detected on the model. Not just changing the value in the view.
2) It is used to add watchers to values that are NOT binded with the view as models. (This can work out, but is it a good practice?)
That is just my guess, I'd like to know if I'm right.
Also, if there is any advanced way to use the $watch, do tell please.
Thanks.