Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.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_Html_Calendar_Htmlcollection - Fatal编程技术网

Javascript 为什么数组的最后一个索引可以';你不能被选中吗?

Javascript 为什么数组的最后一个索引可以';你不能被选中吗?,javascript,html,calendar,htmlcollection,Javascript,Html,Calendar,Htmlcollection,我正在制作一个日历,用户可以在其中选择不同的日期。问题是这个月的最后一天不可用。我在控制台中看到数组的最后一个索引未定义,但当我记录HTMLCollection时,该索引可用。原因是什么 我尝试了一种不同的循环方式,但结果是一样的。如果你能帮助我,我将不胜感激。谢谢 我的代码在这里: let todayDate=new Date(); 让currentMonth=todayDate.getMonth(); 让currentYear=todayDate.getFullYear(); 让月数=[“

我正在制作一个日历,用户可以在其中选择不同的日期。问题是这个月的最后一天不可用。我在控制台中看到数组的最后一个索引未定义,但当我记录HTMLCollection时,该索引可用。原因是什么

我尝试了一种不同的循环方式,但结果是一样的。如果你能帮助我,我将不胜感激。谢谢

我的代码在这里:

let todayDate=new Date();
让currentMonth=todayDate.getMonth();
让currentYear=todayDate.getFullYear();
让月数=[“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”、“月”];
让monthAndYear=document.getElementById(“monthAndYear”);
显示日历(当前月、当前年);
功能显示日历(月、年){
设firstDay=(新日期(年、月)).getDay()-1;
let daysInMonth=32-新日期(年、月、32).getDate();
让calendarBody=document.getElementById(“日历正文”);//日历正文
calendarBody.innerHTML=“”;
monthAndYear.innerHTML=月[月]+“”+年;
设日期=1;
for(设i=0;i<6;i++){
对于(设j=0;j<7;j++){
如果(i==0&&j天/月){
打破
}
否则{
让cell=document.createElement(“div”);
设cellText=document.createTextNode(日期);
设textSpan=document.createElement('span');
textSpan.classList.add('span');
textSpan.onclick=getDay();
如果(日期===todayDate.getDate()&&year==todayDate.getFullYear()&&month==todayDate.getMonth()){
textSpan.classList.add('current')
}
如果(年份
正文{
背景:#1E2124;
}
.日历块{
显示器:flex;
对齐项目:居中;
证明内容:中心;
}
.日历{
宽度:520px;
z指数:10;
}
#蒙丹年{
宽度:100%;
高度:25px;
字体系列:Roboto;
字体风格:普通;
字体大小:粗体;
字体大小:20px;
线高:20px;
文本对齐:居中;
显示器:flex;
对齐项目:居中;
证明内容:中心;
颜色:#FFFFFF;
}
.工作日{
宽度:100%;
高度:30px;
显示器:flex;
对齐项目:居中;
边缘顶部:10px;
证明内容:中心;
}
.每周一天{
字体系列:“Lato”,无衬线;
边缘顶部:10px;
字体风格:普通;
字体大小:300;
字体大小:16px;
显示器:flex;
对齐项目:居中;
证明内容:中心;
线高:16px;
颜色:#FFFFFF;
}
.daysOfWeek分区{
宽度:计算(520px/7);
文本对齐:居中;
高度:30px;
显示器:flex;
对齐项目:居中;
证明内容:中心;
}
#日历正文{
显示器:flex;
边缘顶部:10px;
宽度:520px;
柔性包装:包装;
}
.细胞{
高度:55px;
显示器:flex;
字体系列:Roboto;
字体风格:普通;
证明内容:中心;
对齐项目:居中;
字体大小:正常;
字体大小:20px;
线高:20px;
颜色:#FFFFFF;
弯曲方向:立柱;
宽度:74.25px;
光标:指针;
}
.span{
显示器:flex;
对齐项目:居中;
证明内容:中心;
边界半径:50%;
}
.span:悬停{
背景#505A64;
宽度:40px;
高度:40px;
对齐项目:居中;
证明内容:中心;
光标:指针;
过渡:0.2s缓进缓出;
}
.当前{
宽度:40px;
高度:40px;
边界半径:50%;
颜色:白色;
背景:#121313;
}
.当前:悬停{
背景:#121313;
}
.残疾{
光标:不允许;
背景:无;
颜色:rgba(255,255,255,0.12);
高度:40px;
左边距:17.14px;
右边距:17.14px;
宽度:40px;
}
。已禁用:悬停{
光标:不允许;
背景:无;
颜色:rgba(255,255,255,0.12);
高度:40px;
左边距:17.14px;
右边距:17.14px;
宽度:40px;
}
.选定{
宽度:40px;
高度:40px;
显示器:flex;
对齐项目:居中;
证明内容:中心;
边界半径:50%;
过渡:0.2s缓进缓出;
颜色:#1E2124;
背景:白色;
}

ПН
ВТ
СР
ЧТ
ПТ
СБ
ВС

使用一些jquery修复了这个问题