Javascript 从函数获取返回值时遇到问题
下面是我的项目的一个小片段,我让这些函数一个接一个地工作,但当我将其他函数修改到我的程序时,下面的代码停止工作 我试图做的是从用户(例如Jan)那里获得一个输入daysInMonth对象数组中的一个标签,然后从中返回对象的值以及数组中该对象的索引 我的问题是,如果以Jan为例,在DrawCal()的内部调用getMonthNum()以获取returnMonDayNum的值返回0,即使在getMonthNum函数内部它返回31Javascript 从函数获取返回值时遇到问题,javascript,html,function,Javascript,Html,Function,下面是我的项目的一个小片段,我让这些函数一个接一个地工作,但当我将其他函数修改到我的程序时,下面的代码停止工作 我试图做的是从用户(例如Jan)那里获得一个输入daysInMonth对象数组中的一个标签,然后从中返回对象的值以及数组中该对象的索引 我的问题是,如果以Jan为例,在DrawCal()的内部调用getMonthNum()以获取returnMonDayNum的值返回0,即使在getMonthNum函数内部它返回31 var daysInMonth=[{ 标签:“Jan”, 价值:31
var daysInMonth=[{
标签:“Jan”,
价值:31
}, {
标签:“二月”,
价值:28
}, {
标签:“马克”,
价值:31
}, {
标签:“Apr”,
价值:30
},
{
标签:“五月”,
价值:31
}, {
标签:“六月”,
价值:30
}, {
标签:“七月”,
价值:31
}, {
标签:“八月”,
价值:31
},
{
标签:“9月”,
价值:30
}, {
标签:“十月”,
价值:31
}, {
标签:“11月”,
价值:30
}, {
标签:'Dec',
价值:31
}
]
函数getMonthNum(){
var monInput=document.getElementById(“月”).value;
对于(var i=0;i您正试图从getMonthNum
返回两个内容。如果您真的想同时返回索引和天数,您应该将它们放入一个数组中。否则,您只能得到列表中的最后一个
然后可以引用数组中需要的项
作为补充说明,您可能会发现数组函数类似于,并且比for
循环更好一些。
(我还添加了stopDefault(),只是为了防止表单刷新,使结果保留在控制台中——这可能不是您在实际代码中想要的)
var daysInMonth=[{label:'Jan',value:31},{label:'Feb',value:28},{label:'Marc',value:31},{label:'Apr',value:30},{label:'May',value:31},{label:'June',value:31},{label:'Sept',value:30},{label:'Oct',value:31},{label:'Nov',value:30},{label:'Dec:'
函数getMonthNum(){
var monInput=document.getElementById(“月”).value;
对于(var i=0;i
var daysInMonth=[{
标签:“Jan”,
价值:31
}, {
标签:“二月”,
价值:28
}, {
标签:“马克”,
价值:31
}, {
标签:“Apr”,
价值:30
},
{
标签:“五月”,
价值:31
}, {
标签:“六月”,
价值:30
}, {
标签:“七月”,
价值:31
}, {
标签:“八月”,
价值:31
},
{
标签:“9月”,
价值:30
}, {
标签:“十月”,
价值:31
}, {
标签:“11月”,
价值:30
}, {
标签:'Dec',
价值:31
}
]
函数getMonthNum(){
var monInput=document.getElementById(“月”).value;
var returnMonDayNum
返回数
对于(var i=0;ireturn returnMonDayNum,returnMonNum
@Amit),我不确定您是否刚刚更改了代码中已编辑内容的布局,但我仍然无法在DrawCal()中获得31函数我只是给你指出错误的方向。如果这对你来说不太重要,你可能应该花点时间学习JavaScript。祝你好运:-)@Amit是的,我是JavaScript新手我不知道你不能返回多个变量现在我知道了,我只是对你的评论感到困惑,因为它刚刚突出显示。对不起,我不知道你的意思是这就是问题所在。但是谢谢你的帮助。谢谢你认为我可以同时返回2