$watch angularjs, observador de variables $scope

Aquí vemos como $scope.$watch nos observa la variable pasada como parámetro y podemos ver el valor anterior y nuevo al cambiar esa variable.

HTML

<div ng-app="myApp">
    <div ng-controller="Padre1Controller">
        <input type="text" ng-model="textoFiltro"/><br>
        Antiguo valor:  {{antiguoValor}}<br>
        Nuevo valor:  {{nuevoValor}}
    </div>
</div>

JavaScript

(function() {
    var myApp=angular.module('myApp', []);
    
    myApp.controller('Padre1Controller', function($scope){      
         $scope.$watch("textoFiltro",function(newValue) {
            if(newValue)
            {
            $scope.antiguoValor = 'hola';
            }
            
            if(!newValue)
            {
            $scope.antiguoValor = 'adios
            }
            
             $scope.nuevoValor=newValue;
         });  
    });
    
})();