Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/402.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何更改日历';从星期天到星期一的开始日期?_Javascript_Date_Calendar - Fatal编程技术网

Javascript 如何更改日历';从星期天到星期一的开始日期?

Javascript 如何更改日历';从星期天到星期一的开始日期?,javascript,date,calendar,Javascript,Date,Calendar,嗨,我正试图从作者xMark编写的这个日历示例代码中学习JavaScript。但是他的例子使用星期天作为一周的第一天。我想让它显示星期一是一周的第一天。到目前为止,我只设法更改了标题标签,但没有更改日期的正确位置。 所以我一直在试图理解在他的代码中,我可以让日期向左移动一步。但我不知道在代码中应该在哪里发生这种变化 我最感困惑的部分是Calendar.prototype.showmount=function(y,m){…},我认为这是需要更改的部分。在这个函数中,我不明白为什么作者var k=

嗨,我正试图从作者xMark编写的这个日历示例代码中学习JavaScript。但是他的例子使用星期天作为一周的第一天。我想让它显示星期一是一周的第一天。到目前为止,我只设法更改了标题标签,但没有更改日期的正确位置。

所以我一直在试图理解在他的代码中,我可以让日期向左移动一步。但我不知道在代码中应该在哪里发生这种变化

我最感困惑的部分是
Calendar.prototype.showmount=function(y,m){…}
,我认为这是需要更改的部分。在这个函数中,我不明白为什么作者
var k=lastDay\u of_lastmount-firstDay\u of_Month+1将+1添加到最后一个变量

var k=…
之后,我完全迷路了。每当我试图改变事情时,整个日历都会崩溃

@纳吉布

var d7=新日期(2018年6月1日);
d7
“2018年7月1日太阳”00:00:00 GMT+0200(中欧夏季时间)
var firstDay of_Month=新日期(2018年6月1日)。getDay();
月初一
七月一日是星期天。
//_________________________________________________________________
var d8=新日期(2018年7月1日);
d8
“2018年8月1日星期三”00:00:00 GMT+0200(中欧夏季时间)
var firstDay of_Month=新日期(2018年7月1日)。getDay();
月初一
八月一日是星期三。
//_________________________________________________________________
var dNaguib=新日期(2018年6月7日);
德纳吉布
“2018年7月7日星期六”00:00:00 GMT+0200(中欧夏季时间)
var dNaguib=新日期(2018年6月7日).getDay();
德纳吉布
7月7日是星期六。
//那么为什么这个动态代码每个月都在寻找第7个呢
//让日历上的一切都正常吗?
var firstDay_of_Month=新日期(y,m,7)。getDay();//纳吉布
//而最初的代码则是每月查找1次
//有些月份打破了日历?
var firstDay_of_Month=新日期(y,m,1)。getDay();//原件
从Nikhil Talreja退房。它应该给你一个好主意,如何让日历以周一为开始日期。A

本质上,他使用了一些for循环和标签,例如:

cal_days_labels = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat','Sun'];

for(var j=1;j从Nikhil Talreja查看。它会让您了解如何让日历以周一为开始日期。a

本质上,他使用了一些for循环和标签,例如:

cal_days_labels = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat','Sun'];


for(var j=1;j我查看了您附加的代码笔,查看了代码中提到星期日的每个部分,并将其修改为:

以下是我所做的更改:

我将解释为什么我做了每一次更改,这让我回到了我的大学时代,我必须解释我的代码,请耐心听我说:

1:

这是日历中标题行的标题,只是文本,没有逻辑变化

2:
firstDayOfMonth=6
现在,一个月的第一天是星期一,而不是星期天,您也可以编写
,firstDayOfMonth=新日期(y,m,7)。getDay()
,以获得相同的结果,但我认为第一天会让读者更清楚一些,因为无论如何我们都会得到
6

3:
如果(道琼斯指数==1){
在周一而不是周日开始新的一行

4:
如果(道琼斯指数==0){
在周日而不是周六关闭行

5:
对于(道琼斯指数;道琼斯指数<7;道琼斯指数++){
下个月的“非最新”数据可能会持续到周日,因此我们需要在那里进行额外的迭代(可能有更好的方法不增加迭代次数,但我现在懒得弄清楚)

这主要是一种“尝试改变一些事情,看看会发生什么”的方法,所以我所做的是检查每个我怀疑周日会影响代码的区域,并尝试改变它,看看会发生什么


如果没有足够的意义,请在评论中告诉我。

我查看了您所附的代码笔,查看了代码中提到星期日的每个部分,并将其修改为:

以下是我所做的更改:

我将解释为什么我做了每一次更改,这让我回到了我的大学时代,我必须解释我的代码,请耐心听我说:

1:

这是日历中标题行的标题,只是文本,没有逻辑变化

2:
firstDayOfMonth=6
现在,一个月的第一天是星期一,而不是星期天,您也可以编写
,firstDayOfMonth=新日期(y,m,7)。getDay()
,以获得相同的结果,但我认为第一天会让读者更清楚一些,因为无论如何我们都会得到
6

3:
如果(道琼斯指数==1){
在周一而不是周日开始新的一行

4:
如果(道琼斯指数==0){
在周日而不是周六关闭行

5:
对于(道琼斯指数;道琼斯指数<7;道琼斯指数++){
下个月的“非最新”数据可能会持续到周日,因此我们需要在那里进行额外的迭代(可能有更好的方法不增加迭代次数,但我现在懒得弄清楚)

这主要是一种“尝试改变一些事情,看看会发生什么”的方法,所以我所做的是检查每个我怀疑周日会影响代码的区域,并尝试改变它,看看会发生什么


如果没有足够的意义,请在评论中告诉我。

谢谢Naguib因为您建议的代码,我的整个日历现在似乎都没有bug了。
var firstDay\u of_Month=新日期(y,m,7)。getDay()
但我不明白为什么它能工作,因为它的静态版本只在7月份工作,但在其他月份有问题,因为1st不是在周日
firstDayOfMonth=6
。我做了一个测试。
var dNaguib=newdate(2018,6,7);
dNaguib
dNaguib
“2018年7月7日星期六”
.dNaguib.getDay();d
  this.DaysOfWeek = [
    'Mon',
    'Tue',
    'Wed',
    'Thu',
    'Fri',
    'Sat',
    'Sun'
  ];