用javascript显示明天的名称?
我试图在我们的电子商务网站上输出类似于以下内容的内容:用javascript显示明天的名称?,javascript,dayofweek,weekday,Javascript,Dayofweek,Weekday,我试图在我们的电子商务网站上输出类似于以下内容的内容: Order by 5pm today for dispatch on Monday 显然,单词“星期一”将替换为第二天的名称,最好是下一个工作日,即不是星期六或星期天 我有以下简单的javascript脚本,它完成了最基本的版本。它只输出当前日期名称: <p id="orderBy"> <script type="text/javascript"> <!-- // Array of day nam
Order by 5pm today for dispatch on Monday
显然,单词“星期一”将替换为第二天的名称,最好是下一个工作日,即不是星期六或星期天
我有以下简单的javascript脚本,它完成了最基本的版本。它只输出当前日期名称:
<p id="orderBy">
<script type="text/javascript">
<!--
// Array of day names
var dayNames = new Array("Sunday","Monday","Tuesday","Wednesday",
"Thursday","Friday","Saturday");
var now = new Date();
document.write("Order by 5pm today for dispatch on " + dayNames[now.getDay()]);
// -->
</script>
</p>
是否有办法将上述代码转换为+1日名称?因此,它将输出明天的名称,而不是今天的名称。此外,可以跳过周末吗?另一种方式
<p id="orderBy">
<script type="text/javascript">
<!--
// Array of day names
var dayNames = ["Sunday","Monday","Tuesday","Wednesday",
"Thursday","Friday","Saturday"];
var nextWorkingDay = [ 1, 2, 3, 4, 5, 1, 1 ];
var now = new Date();
document.write("Order by 5pm today for dispatch on " +
dayNames[nextWorkingDay[now.getDay()]]);
// -->
</script>
</p>
这里有一条可以跳过周末的单行线:
document.write("Order by 5pm today for dispatch on " +
dayNames[ ((now.getDay() + 1) % 6 ) || 1 ] );
如果getDay是星期五5,那么+1是6,%6是0,这是错误的,因此| | 1使它成为星期一
如果getDay是周六6,那么+1是7,%6是周一1
如果getDay是星期日0,那么+1是1,%6是1星期一
无需维护并行阵列。我错过了他想跳过周末的消息。很好。建议使用数组文字符号而不是新的数组。@T.J.Crowder我将编辑答案以使用文字符号-只是通过剪切和粘贴问题中的代码来偷懒。如果我在开发网站上有这个,伪造当前日期以检查其是否在周六等工作的最简单方法是什么?@dannymcc您可以向日期构造函数提供参数,以便现在将其设置为任何您想要的日期,以用于测试目的。请看这个网站,它很整洁,但我更喜欢并行数组,因为它可以使代码的作用变得明显,并且可以很容易地更改规则-例如,如果您找到周六送货的快递员。@Noel:是的,数组将提供更大的灵活性。说得好。虽然在这种情况下,你只需将%改为7,你就有周六了。每个国家的工作日也不一样,在以色列这里是星期天到星期四,其他国家是不同的。@Zachary K:我很感激,但解决方案是针对问题的具体要求。如果需要,任何解决方案都需要进行本地化调整。