reactjs - array.includes() 不像我预期的那样工作,没有检测到包含的元素
问题描述
我在这个函数中编写它,其中数组包含两个元素的数组,一个用户名和一个分数。我想通过他们的分数找到前 N 个用户名,所以每次调用该函数时,我都会检查我正在查看的用户名是否已经在数组中。
findLargest(array) {
let largest = this.state.users.toIndexedSeq().get(0);
let score = 0;
console.log(array);
// eslint-disable-next-line consistent-return
this.state.users.entrySeq().forEach((element) => {
console.log([element[1].username, element[1].score]);
if (array.includes([element[1].username, element[1].score])) {
console.log(element);
console.log(array);
return null;
}
if (element[1].score > largest.score) {
// eslint-disable-next-line prefer-destructuring
largest = element[1];
score = element[1].score;
}
});
return [largest.username, score];
}
然而,我只获得了N次最佳射手。
解决方案
推荐阅读
- c# - 在 .Net Core 中基于每个用户使用不同的连接字符串初始化 DBConext
- python-3.x - 在 PyQT 中单击按钮后如何从函数接收返回?
- linux-kernel - 我如何知道哪个文件与内核模块相关联?
- javascript - 构建包含具有开始和结束时间的时间表的 json,以便将它们分组为由开始/结束时间时间表连续性定义的班次
- tensorflow - 从 TensorFlow 中的太多图像创建数据集
- linux - 如何在 Go 守护进程中重新启动自身?
- flutter - 尝试使用提供者的值时出现错误“对空值使用空检查运算符”
- python - PowerBI 中的 Python 脚本
- python - 成功运行后 PyInstaller 致命错误
- apache-kafka - 批处理模式下消费者轮询的优先级