讓我們假設我們有一個車行駛到一個目的地:爲增加/減少設置「結束條件」最優雅的方式?
第一種方案:
destination to: 100px
第二種情況:
destination to: -50px
僞代碼:
var currentValueToAdd;
if (valueToIncrementPosition > 0) {
if (currentPositionOfCar <= destination) {
currentValueToAdd = valueToIncrementPosition;
} else {
currentValueToAdd = 0;
}
} else {
if (currentPositionOfCar >= destination) {
currentValueToAdd = valueToIncrementPosition;
}
else {
currentValueToAdd = 0;
}
}
car.style.position += currentValueToAdd + "px";
,你可以看,我可以遞增-n或n,結尾可以在下面或嗨比當前的汽車位置還要高。所以我的車停下來的條件真的在小於或大於目的地之間變化。
有沒有更好的方法來編寫上述解決方案,讓汽車停下來?也許有某種公式?
其他想法,我必須是使用該犯規絕對值似乎是正確兩種:
Math.abs(currentPositionOfCar) > Math.abs(destination) ? 0 : valueToIncrementPosition;
具有這個工作的例子是如此愉快努力改善:) –
取決於你所說的「優雅」。 –
@Bálint更短! :) – Asperger