2014-01-05 31 views
0

我正在寻找一个JavaScript代码的帮助,这将允许我预测我的客户的到货日期。JavaScript运费到货日期预测器

例如,如果客户在12/14/13订购物品,我希望脚本告诉他们该物品将在XX/XX/XXXX到达。我希望脚本计算购买日期后的14个工作日。

+0

你试过什么样的javascript代码了? – cubitouch

+0

我还没有尝试过任何东西。不太确定从哪里开始。我正在使用Shopify,并且需要将此代码放在HTML电子邮件中。 – Stephanie

+0

你需要考虑假期吗? –

回答

0

我创建了一个的jsfiddle为此,这里的链接http://jsfiddle.net/8mad9/

如果你想只加14天(周末考虑),这是非常简单的。

var today = new Date(); 
var days = 14; 
var deliveryDate = new Date(today.getTime() + (days * 24 * 60 * 60 * 1000)); 
console.log(deliveryDate); 

如果今天是“Sun Jan 05 2014 16:45:44”,将打印出“Sun Jan 19 2014 16:46:56”。

如果我们不想考虑周末我们需要计算添加周末的日子。
例如,今天是2014年1月5日周日。

console.log(new Date().getDay()); 
--> 0 

星期日是0,周一是1 ....和星期六是6

利用这一点,我们可以使用一个循环来计算这样的14个工作日

var today = new Date(); //5th jan 2014 
var business_days = 14; 

var deliveryDate = today; //will be incremented by the for loop 
var total_days = business_days; //will be used by the for loop 
for(var days=1; days <= total_days; days++) { 
    deliveryDate = new Date(today.getTime() + (days *24*60*60*1000)); 
    if(deliveryDate.getDay() == 0 || deliveryDate.getDay() == 6) { 
    //it's a weekend day so we increase the total_days of 1 
    total_days++ 
    } 
} 
console.log(today); 
console.log(deliveryDate); 


--> Sun Jan 05 2014 17:13:39 GMT+0100 (CET) 
--> Thu Jan 23 2014 17:13:39 GMT+0100 (CET)