O que significa o sublinhado em ‘_ $ httpBackend_’?

Ao fazer testes com AngularJS, você deve ter notado um código como este:

var backend;
inject
(function(_$httpBackend_) {
backend
= _$httpBackend_;
});

De onde vêm os sublinhados misteriosos? Este é apenas um truque para tornar possível salvar objetos injetados em variáveis ​​com seus nomes ‘normais’, assim:

var $httpBackend;
inject
(function(_$httpBackend_) {
$httpBackend
= _$httpBackend_;
});

Os sublinhados são ignorados pela função do injetor, portanto, você pode usar isso para qualquer objeto injetável.

Consulte também http://docs.angularjs.org/tutorial/step_05 .