The accepted answer is great. I wanted to look at what happens to the Angular scope in the context of ng-repeat
. The thing is, Angular will create a sub-scope for each repeated item. When calling into a method defined on the original $scope
, that retains its original value (due to javascript closure). However, the this
refers the calling scope/object. This works out well, so long as you're clear on when $scope
and this
are the same and when they are different. hth
Here is a fiddle that illustrates the difference: https://jsfiddle.net/creitzel/oxsxjcyc/