Вы можете удалить if-else
и Math.abs
так:
h = gradientStartH - (gradientStartH - gradientEndH) / arr.length * i
Вот фрагмент кода, сравнивающий его с вашим кодом:
// Your code
function getDiffExisting(gradientStartH, gradientEndH, arr) {
let h = 0;
if (gradientStartH > gradientEndH) {
h = gradientStartH - Math.abs(gradientStartH - gradientEndH) / arr.length
} else {
h = gradientStartH + Math.abs(gradientStartH - gradientEndH) / arr.length
}
return h;
}
console.log(getDiffExisting(200, 100, [1,2]))
console.log(getDiffExisting(50, 100, [1,2]))
function getDiffNew(gradientStartH, gradientEndH, arr) {
let h = gradientStartH - (gradientStartH - gradientEndH) / arr.length
return h;
}
console.log(getDiffNew(200, 100, [1,2]))
console.log(getDiffNew(50, 100, [1,2]))
(я удалил i
для целей тестирования)