AngularJSを使っていると、非常にお世話になる$watch。 変数やオブジェクトが変化した事を読み取る事ができます。 データバインディングによってリアルタイムにページの変化を扱えるAngularJSではほぼ必須の機能と言っても過言ではないと思います。 僕が開発しているシステムでもあちこちで利用しています。 変数やオブジェクトの変化を簡単に検知できるのですが、今回は1つの変数と1つのオブジェクト、どちらかが変化した時にイベントを取得したかったので、その方法を備忘録に載せたいと思います。 やり方 通常では変数名を文字列で検知対象を指定します。 $scope.hoge = 'fuga'; $scope.$watch('hoge', function() { // 変数hogeがなんか変化した時の処理 }); $watchの第一引数は関数で書くことができます。 関数使って同じこと書くとこんな

