使用javascript根据数量计算成本

时间:2015-10-14 17:15:13

标签: javascript jquery

我似乎无法完成此任务。我知道如何判断这个数字是否可以被3整除但是一旦我超过3,我如何保持折扣加上余数?示例:7张门票价格为120美元

每人20美元或50美元3美元

<input id="raffleTix" type="text" value="0" />
if($('#raffleTix').val() % 3 == 0){
    raffle = ($('#raffleTix').val() / 3) * 50;
}else if($('#raffleTix').val() < 3){
    raffle = $('#raffleTix').val() * 20;
}else{

}

1 个答案:

答案 0 :(得分:3)

不需要任何条件逻辑。这可以通过一个简单的公式来完成:

var value = $('#raffleTix').val();
var setsOfThree = Math.floor(value / 3);
var singles = value - setsOfThree * 3;

raffle = setsOfThree * 50 + singles * 20;

或者甚至更好,它可以全部放在一个函数中,这样可以在不修改代码的情况下传递不同的值:

function computeCost(quantity, setSize, setCost, singleCost) {
    var sets = Math.floor(quantity / setSize);
    var singles = quantity - sets * setSize;

    return sets * setCost + singles * singleCost;
}

raffle = computeCost($('#raffleTix').val(), 3, 50, 20);