首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在不知道在Javascript中是什么的情况下引用数组的索引?

如何在不知道在Javascript中是什么的情况下引用数组的索引?
EN

Stack Overflow用户
提问于 2016-10-24 10:09:58
回答 1查看 76关注 0票数 0

我正在做一个日历应用程序,我试着验证输入的日期是否在本学期,然后看看我们是否放假了。我有一个所有日期的索引,其中包含了各个节日的名称,但当我尝试使用indexOf时,代码崩溃了。这是html:

代码语言:javascript
复制
<form onsubmit="holiday()" method="post">
  <fieldset>
    Enter Date: <input type='date' id="dat"><p>
    <input class="ubmit" type=submit >
  </fieldset>
</form>
<p id="output"></p>

这是js:

代码语言:javascript
复制
var dvalue = document.getElementById("dat").value;
function holiday(){
  var txt ="boo";
  dvalue=Date.parse(dvalue);
  console.log(dvalue);
  if (dvalue<1473033600000 || dvalue>1494979200000 || dvalue=="NaN"){
    txt="This is not a valid date for this calendar app";
  }
  else function validate(dvalue){
    var holidayz=new Array();
    holidayz[0]=["Columbus Day",1473033600000];
    holidayz[1]=["Fall Recess",1476057600000];
    holidayz[2]=["Thanksgiving Recess",1479859200000];
    holidayz[3]=["Thanksgiving Recess",1479945600000];
    holidayz[4]=["Thanksgiving Recess",1480032000000];
    holidayz[5]=["Thanksgiving Recess",1480118400000];
    holidayz[6]=["President's Day",1487548800000];
    holidayz[7]=["Spring Recess",1489363200000];
    holidayz[8]=["Spring Recess",1489449600000];
    holidayz[9]=["Spring Recess",1458000000000];
    holidayz[10]=["Spring Recess",1489622400000];
    holidayz[11]=["Spring Recess",1489708800000];
    holidayz[12]=["Reading Day",1494288000000];
    holidayz[13]=["Memorial Day",1496016000000];
    holidayz[14]=["Independence Day",1499126400000];
    if (holidayz.includes(dvalue)){
      var mydate = new Date(dvalue);
      console.log("<p>" + mydate + "<p>");
      var day = mydate.getUTCDate();
      var month = mydate.getMonth()+1;
      var year = mydate.getFullYear();
      console.log (month + "/" + day +"/" + year);
      var holival= asList(holidayz).indexOf(dvalue);
      console.log(holival)
    }
}

  console.log(txt)
  document.getElementById("output").innerHTML = txt;
}
EN

Stack Overflow用户

发布于 2016-10-24 10:30:32

尝尝这个,

代码语言:javascript
复制
var dvalue = document.getElementById("dat").value;

function holiday(){
    var txt ="boo";
    dvalue=Date.parse(dvalue);
    console.log(dvalue);
    if (dvalue<1473033600000 || dvalue>1494979200000 || dvalue=="NaN"){
        txt="This is not a valid date for this calendar app";
    } else {
        var holidayz=new Array();
        holidayz[0]=["Columbus Day",1473033600000];
        holidayz[1]=["Fall Recess",1476057600000];
        holidayz[2]=["Thanksgiving Recess",1479859200000];
        holidayz[3]=["Thanksgiving Recess",1479945600000];
        holidayz[4]=["Thanksgiving Recess",1480032000000];
        holidayz[5]=["Thanksgiving Recess",1480118400000];
        holidayz[6]=["President's Day",1487548800000];
        holidayz[7]=["Spring Recess",1489363200000];
        holidayz[8]=["Spring Recess",1489449600000];
        holidayz[9]=["Spring Recess",1458000000000];
        holidayz[10]=["Spring Recess",1489622400000];
        holidayz[11]=["Spring Recess",1489708800000];
        holidayz[12]=["Reading Day",1494288000000];
        holidayz[13]=["Memorial Day",1496016000000];
        holidayz[14]=["Independence Day",1499126400000];
        holidayz[15]=["Test Day",1476921600000];

        for(var i=0; i<holidayz.length; i++){
            if ((holidayz[i][1])==dvalue){
            var mydate = new Date(dvalue);
            console.log("<p>" + mydate + "<p>");
            var day = mydate.getUTCDate();
            var month = mydate.getMonth()+1;
            var year = mydate.getFullYear();
            console.log (month + "/" + day +"/" + year);
            var holival= i; //asList(holidayz).indexOf(dvalue);
            console.log(holival);
            break;
        }
     }
    }
    console.log(txt);
}

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40209790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档