我有一个jQuery滑块,可以捕获订购单元的总数。第一个单位的价格是50美元。然后每个单位的价格下降2.66%。所以订购2时每单位的价格是48,67。订购3个单位时,每个单位的价格为47,37,依此类推。
我曾想过制作一个开关盒,但这肯定会太长,因为单位数可能达到30个。
我想好像可以应用一些公式以及如何在jQuery中执行它?
非常感谢任何帮助。
这是滑块:
$(document).ready(function() {
$("#slider").slider({
range: "min",
animate: true,
value:1,
min: 1,
max: 100,
step: 1,
slide: function(event, ui) {
update(1,ui.value); //changed
}
});
它的id是“金额”,这是我如何计算总数:
$total = ($amount * $pricePerUnit) + " USD";
我需要得到的只是pricePerUnit。
答案 0 :(得分:1)
这对https://math.stackexchange.com/来说更像一个问题,但这就是你需要的:
让P
为您的初始价格(50.00),r
为您的降价幅度(.0266)。单位n
的价格为P*((1-r)^i)
。
当i
为0
时,您的基本情况为P
。
当i
递增时,您将看到以下模式:
P_k = P*(1 - r)*(1 - r)*(1 - r)*...
因此,您可以轻松地将(1 - r)
提升至已购买的单位数量,您将获得下一个单位的价格。
在jQuery中,计算它应该很简单:
var baseAmount = 50.0;
var rateOfDecrease = 0.0266;
var n = $('#slider').slider("option", "value");
var pricePerUnit = baseAmount * Math.pow((1 - rateOfDecrease), n);