KOPC1886: Если несколько scope'ов, то наверно лучше в сервис вынести эти данные? Это будет правильно с точки зрения Angular.js, и тогда все манипуляции с данными происходить будут в одном месте.
А вообще правильность - сомнительная категория :) Можете использовать любой удобный Вам вариант. Хотя чувствую, что с map будет самым оптимальным.
KOPC1886: На StackOverflow есть красивый ответ:
pos = myArray.map(function(e) { return e.id; }).indexOf(your_id);
Но принципиально других вариантов наверно нет - все будут вращаться вокруг этих трех.
А у Вас НАСТОЛЬКО много пользователей, что в браузере надо экономить память/скорость именно на этом моменте?