I saw these two differents patterns to define controllers in AngularJS:
myApp.controller('myControllerName', function($scope) {
// ... my controller code ...
});
and
myApp.controller('myControllerName', ['$scope', function($scope) {
// ... my controller code ...
}]);
In dependency injection, parameters added respectively.
What is the difference between those two coding routines? I'd love for detailed answer, for both the JavaScript and AngularJS low-level aspects.