Buenas. A ver si alguien puede orientarme un poco.
Resulta que estoy recorriendo 2 arrays (un array con 6 registros y el otro array con 2 registros) para comparar unos datos.
La cosa es que los está recorriendo bien, pero al meter un else, me pasa que el último registro del array me lo pisa al volver a recorrerlo por segunda vez. A ver si me explico. Para cada registro del array de 6, me compara cada uno de los registros del segundo array. Pero justo en el último recorrido es como que me borra el valor que tiene y me coge el del else. (con el código se entenderá mejor)
Código:
for (var i in $scope.doctors) {
for (var j in $scope.downtimes) {
if ($scope.doctors[i].id === $scope.downtimes[j].doctor) {
if ($scope.downtimes[j].estado === 'totallyBussy') {
$scope.doctors[i].downtime = 'No disponible';
} else if ($scope.downtimes[j].estado === 'partlyBussy') {
$scope.doctors[i].downtime = 'Parcialmente disponible';
}
}
else {
$scope.doctors[i].downtime = 'Disponible';
}
}
}
Por pantalla me pinta bien todos los datos excepto el último (que debuggeando, la primera vez que hace la comparación me devuelve un 'no disponible' que es el valor que debe tomar, pero que al recorrerlo por segunda vez, me lo cambia a 'disponible'.
Agradezco de antemano cualquier ayuda.
:)