【问题标题】:javascript create pro rated price calculatorjavascript 创建按比例计算的价格计算器
【发布时间】:2013-11-16 13:08:00
【问题描述】:

我正在尝试创建一个小型 js 应用程序,以根据当前日期显示按比例分配的每月订阅价格。这是我拥有的纯英文代码:

{

获取今天的日期

查看我们在哪个月份

根据月份,计算当月剩余天数

每月价格除以当月总天数得到每日价格

当月剩余天数乘以每日价格

按比例显示价格

};

我对 javascript 非常陌生,不知道如何超越获取今天的日期。

【问题讨论】:

  • 你应该先试试...
  • 说到日期,看看momentjs.com
  • 计算并不难...搜索javascript date object 寻找初学者。像moment这样的库确实使它更容易。当你努力并被卡住时回来
  • 非常好的mwfire,我正在查看moments.js。看来这正是我所需要的。
  • 你的作业先自己试试

标签: javascript date-arithmetic


【解决方案1】:

此代码可能对您有所帮助

function code(pricepermonth){


var dt = new Date();  
month = dt.getMonth();
day   = dt.getDate();
year  = dt.getFullYear();


if(month == 11)
var nextMonth = new Date(year+1,0,1);
else
var nextMonth = new Date(year,month+1,1);

var today = new Date(year,month,day);

var remain = (nextMonth.getTime() - today.getTime())/1000;  
remain = remain/(60*60*24);
totaldays = day+remain;     
var priceperday = pricepermonth/totaldays;

var remainingprice = priceperday*remain;
alert(remainingprice);
return remainingprice;
}

var pricepermonth = 50000;
code(pricepermonth);

【讨论】:

  • 谢谢SHIN,这正是我想做的。由于我正在尝试学习 javascript,因此我将修改此代码以使用 moment.js。我仍然需要弄清楚如何在页面上显示答案而不是警报(请不要告诉我)。
  • var ans = code(pricepermonth); document.getElementById('mydiv').innerHTML = ans;
  • 在 html 上
  • 再次感谢 SHIN,我能够使用您的答案创建这个单页应用程序 umcus.com/newark
【解决方案2】:

这是一个更简单的版本,只查看天数。今天很重要

function getProrate(monthlyPrice){
    var today = new Date();
    var totalDays = new Date(today.getFullYear(), today.getMonth(), 0).getDate();
    var daysLeft = (totalDays - today.getDate()) - 1; 

    var pricePerDay = monthlyPrice/totalDays;
    return daysLeft * pricePerDay;
}

明天算第一天。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-31
    • 1970-01-01
    • 2016-11-01
    • 2014-12-22
    • 2017-08-11
    相关资源
    最近更新 更多