Angular didn't get rid of this
. In angular, you use scopes to communicate values between controllers and views. this
is the function execution context, which means it's the object the current function or property is being called on.
But AngularJS isn't written to use this in databindings, it's written to specifically parse those {{}}
databindings and look for properties on the corresponding controller's scope
object.
So Angular sees the following:
<div ng-controller="mainCtrl">
<p>{{myVariable}}</p>
</div>
And knows to go to the mainCtrl
controller and look in the $scope
object to find the myVariable
variable. this
never enters into it.