title: Why does the watch fire when oldvalue is equal to newvalue?
body: <p>I have:</p>
  
  <pre><code>   $scope.$watch('option.sSubject', function (newValue, oldValue) {
                      if (newValue !== oldValue) {
  </code></pre>
  
  <p>and:</p>
  
  <pre><code>console.log(newValue)
  1
  undefined
  console.log(oldValue)
  1
  undefined
  </code></pre>
  
  <p>Can someone explain why the watch fires when there seems to be no change in value. Note that this is when I am just opening the page.</p>