如何同时增加值而不是按顺序映射它们?
How to increment values at the same time rather than mapping through them in order?
我正在用 ReactJS 制作赛车游戏,我需要同时增加四个比赛实体(在我的例子中是 divs)的值,而不是通过它们进行映射并将它们一个递增一。现在它们都以随机速度点击按钮增加。
changePlayerArr.map(player => {
console.log(player)
player.speed = player.speed - Math.floor(Math.random() * 11 + 5)
});
他们在 CSS 中按 VW 移动,目标是让他们到达屏幕末端的 -100vw。但是,如果我将他们的速度从第一个 div 提高到最后一个 div,反之亦然,我无法知道哪个才是真正的赢家。有什么建议吗?
Javascript是单线程的,并发方式不多。我认为您能做的最好的事情是保留对赛车手很重要的某些指标的结构(例如位移),并在每个渲染周期应用位移累加器 (displacementDelta = rate * time
) 以确定新的排序顺序。
在累积位移和排序结构后,获胜者可能是第一名的元素(可能是索引 0?)在至少一个 元素达到比赛距离后。
我正在用 ReactJS 制作赛车游戏,我需要同时增加四个比赛实体(在我的例子中是 divs)的值,而不是通过它们进行映射并将它们一个递增一。现在它们都以随机速度点击按钮增加。
changePlayerArr.map(player => {
console.log(player)
player.speed = player.speed - Math.floor(Math.random() * 11 + 5)
});
他们在 CSS 中按 VW 移动,目标是让他们到达屏幕末端的 -100vw。但是,如果我将他们的速度从第一个 div 提高到最后一个 div,反之亦然,我无法知道哪个才是真正的赢家。有什么建议吗?
Javascript是单线程的,并发方式不多。我认为您能做的最好的事情是保留对赛车手很重要的某些指标的结构(例如位移),并在每个渲染周期应用位移累加器 (displacementDelta = rate * time
) 以确定新的排序顺序。
在累积位移和排序结构后,获胜者可能是第一名的元素(可能是索引 0?)在至少一个 元素达到比赛距离后。