Показать сообщение отдельно
  #25 (permalink)  
Старый 21.07.2014, 16:38
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Черт знает. Если посмотреть исходники
if (trackByExp) {
  trackByExpGetter = $parse(trackByExp);
  trackByIdExpFn = function(key, value, index) {
  // assign key, value, and $index to the locals so that they can be used in hash functions
    if (keyIdentifier) hashFnLocals[keyIdentifier] = key;
      hashFnLocals[valueIdentifier] = value;
      hashFnLocals.$index = index;
      return trackByExpGetter($scope, hashFnLocals);
    };
} else {
  trackByIdArrayFn = function(key, value) {
    return hashKey(value);
  };
  trackByIdObjFn = function(key) {
    return key;
  };
}

то в одном случае будет всегда срабатывать
trackByExpGetter($scope, hashFnLocals);

в другом —
hashKey(value);

Не уверен, что первая быстрее...
Ответить с цитированием