2016-04-16 50 views
0

我有这个过程,用户选择2个日期。系统将会检查是否有周末。周末是:如何添加附加费

  • 周五
  • 周六
  • 周日

每次有周末,将有额外收费+ $ 10周末每天。

我在下面有这段代码,我想要的是添加附加费的过程。

http://jsfiddle.net/xtD5V/71/

function isWeekend(date1, date2) { 
    var d1 = new Date(date1), 
     d2 = new Date(date2), 
     isWeekend = false; 

    while (d1 < d2) { 
     var day = d1.getDay(); 
     isWeekend = (day == 6) || (day == 0); 
     if (isWeekend) { return true; } 
     d1.setDate(d1.getDate() + 1); 
    } 
    return false; 
} 

alert(isWeekend(date1, date2)); 

回答

0

您可以选择试试这个选项。

  • 循环遍历所有日期,并检查周末像你一样。
  • 储存于一个变量

选项1:

function noOfWeekends(date1, date2) { 
    //record number of weekends 
    var no_of_weekends = 0; 

    var d1 = new Date(date1), 
    d2 = new Date(date2), 
    isWeekend = false; 

while (d1 < d2) { 
    var day = d1.getDay(); 
    isWeekend = (day == 6) || (day == 0); 
    if (isWeekend) { no_of_weekends++; } 
    d1.setDate(d1.getDate() + 1); 
} 

return no_of_weekends; 

} 

//noOfWeekends now returns the number of weekends. You can do more stuff with it 
alert(noOfWeekends(date1, date2) > 0); 
alert("surcharge: " + noOfWeekends * 10); 

* P/S:你可以选择写一个公式,因为我们可以计算周末的数目没有环从当前日期和剩余天数中获取信息。请尝试一下。

+0

附加费部分在哪里? – Reigel

+0

增加了更改,如果你能够理解代码并学习一些东西,那将是非常好的。我相信你可以理解你需要的改变 – sihao