title: Why angularjs will invoke function `name()` twice?
body: <p>The code is simple:</p>
  
  <pre><code>&lt;!doctype html&gt;
  &lt;html ng-app="plunker" &gt;
  &lt;head&gt;
    &lt;meta charset="utf-8"&gt;
    &lt;title&gt;AngularJS Plunker&lt;/title&gt;
    &lt;script&gt;document.write("&lt;base href=\"" + document.location + "\" /&gt;");&lt;/script&gt;
    &lt;link rel="stylesheet" href="style.css"&gt;
    &lt;script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.4/angular.js"&gt;&lt;/script&gt;
  &lt;/head&gt;
  &lt;body ng-controller="MainCtrl"&gt;
    Hello {{name()}}!
  &lt;/body&gt;
  &lt;/html&gt;
  &lt;script&gt;
  var app = angular.module('plunker', []);
  
  app.controller('MainCtrl', function($scope) {
    $scope.name= function() {
      console.log("---name---:" + new Date());
      return "Freewind";
    };
  });
  
  &lt;/script&gt;
  </code></pre>
  
  <p>You can see there is a <code>name</code> function and we invoke it in the body only one time. But in the console, it prints twice of <code>---name---:</code>:</p>
  
  <pre><code>---name---:Wed Feb 20 2013 14:38:12 GMT+0800 (中国标准时间)
  ---name---:Wed Feb 20 2013 14:38:12 GMT+0800 (中国标准时间)
  </code></pre>
  
  <p>You can see a live demo here: <a href="http://plnkr.co/edit/tb8RpnBJZaJ73V73QISC?p=preview">http://plnkr.co/edit/tb8RpnBJZaJ73V73QISC?p=preview</a></p>
  
  <p>Why the function <code>name()</code> has been invoked two times?</p>