The `ngInit` directive allows you to evaluate an expression in the
current scope.
<div class="alert alert-danger">
This directive can be abused to add unnecessary amounts of logic into your templates.
There are only a few appropriate uses of `ngInit`, such as for aliasing special properties of
`ngRepeat`, as seen in the demo below; and for injecting data via
server side scripting. Besides these few cases, you should use controllers
rather than `ngInit` to initialize values on a scope.
</div>
<div class="alert alert-warning">
**Note**: If you have assignment in `ngInit` along with a `filter`, make
sure you have parentheses to ensure correct operator precedence:
<pre class="prettyprint">
`<div ng-init="test1 = ($index | toString)"></div>`
</pre>
</div>