Если вы удалите инструкцию else, вы увидите только правильные предупреждения.
const infoDay = (day) => {
this.state.usuarios.forEach((usuarioTemp) => {
if (day.dateString == usuarioTemp.date) {
alert(usuarioTemp.nombre);
}
});
};
Если вы хотите пройти через определенного c пользователя, вы должны будете сделать dict с ним имена
Например:
let usuarioTemp = {
firstUser:{day: 17},
secondUser:{day: 19}
}
И ваша функция может быть:
const infoDay = (day, userName) => {
if(usuarioTemp[userName].date === day){
alert(userName);
}
};
И, наконец, я полагаю, вы получаете такие данные:
[{nombre:"Name", date:17}, {nombre:"Name2", date:19}]
Вы можете использовать эту функцию:
function groupBy(array, key) {
let arrayReduced = array.reduce(
(result, { [key]: k, ...rest }) => {
(result[k] = rest);
return result;
},
{}
);
return arrayReduced;
}
, и вы увидите следующие данные:
{
"Name": {date: 17},
"Name2": {date: 19}
}
Test:
//Data example
let data = [{nombre:"Name", date:17}, {nombre:"Name2", date:19}]
//Function groupBy
function groupBy(array, key) {
let arrayReduced = array.reduce(
(result, { [key]: k, ...rest }) => {
(result[k] = rest);
return result;
},
{}
);
return arrayReduced;
}
//Usage
console.log(groupBy(data, "nombre"))
Надеюсь, это поможет!