当我单击该按钮时,我应该将其添加到itemSold字段中。但示例应该是这样的:
1.我单击任意按钮。第一个客户的'itemSold'数组中的第一个元素为空。这就是他在这里添加它的原因。
1.我单击任意按钮。第二个客户的'itemSold'数组中的第一个元素为空。这就是他在这里添加它的原因。
1.我单击任意按钮。第一个客户的'itemSold'数组中的第二个元素为空。这就是他在这里添加它的原因。
1.我单击任意按钮。第二个客户的'itemSold'数组中的第二个元素为空。这就是他在这里添加它的原因。
第一个
1条答案
按热度按时间hmae6n7t1#
所以要想不存储任何状态而成为+-普适的,它可能是这样的
一些解释
1.我们需要知道数组中是否还有空值,为此我们需要为每个数组
customers.map(c => c.product.itemSold.indexOf(null));
获取空值的索引1.现在,我们需要检查,如果没有找到空值(所有索引都是-1),则我们完成
if(nullIndexes.every(i => i == -1)) return;
1.然后我们需要得到我们需要替换的值的正确索引,为此我们需要上面找到的最小索引,但不计算-1(因为-1意味着特定数组已经满了)
const minIndex = Math.min(...nullIndexes.filter(i => i != -1))
1.现在,我们所要做的就是检查客户,找到在上面确定的索引中为空的特定客户,并将其替换。
不要误解我的意思-这很可能不是最佳的最优方法,但它是一种解决方案