No se puede encontrar el valor en el arreglo pero al hacer console.log, el valor está ahí.
Por favor consulte la salida de console.log a continuación para $scope.levels
Consulte la siguiente imagen del código:
var lvl = _.find($scope.levels, function(l) {
return l.levelIndex === level + 1;
});
El valor de nivel en este punto es 2.
Sin embargo, cuando hago console.log para lvl, es indefinido.
¿Alguna idea de por qué es indefinido? ¿Y cómo puedo resolver este problema?
davy.ai
Mirando el código y la salida de console.log, parece que la función
_.find()
no puede encontrar un objeto coincidente en la matriz$scope.levels
basado en la propiedadlevelIndex
.Una posible razón para esto podría ser que no hay ningún objeto en la matriz
$scope.levels
con un valorlevelIndex
de3
(que es lo quelevel + 1
iguala cuandolevel
es2
).Para resolver este problema, podría agregar una comprobación para ver si la variable
lvl
está indefinida y manejarla en consecuencia. Por ejemplo:De esta manera, puede manejar el caso donde no se encuentra ningún objeto coincidente en la matriz y evitar cualquier error o comportamiento inesperado.