繁体   English   中英

我不知道我在使用 getDay() 时做错了什么

[英]I can't figure out what I'm doing wrong with getDay()

我希望页面能够检测今天是否是星期四,以及是否显示一些文本。 我不明白为什么这行不通。 是因为我可以在 if 上做 = 吗? 请解释一下,谢谢!

    <!DOCTYPE html>
    <html>
    <body>
    <p id="demo"></p>
    <p id="bleh"></p>

    <script>
    var day;
    switch (new Date().getDay()) {
        case 0:
            day = "Sunday";
            break;
        case 1:
            day = "Monday";
            break;
        case 2:
            day = "Tuesday";
            break;
        case 3:
            day = "Wednesday";
            break;
        case 4:
            day = "Thursday";
            break;
        case 5:
            day = "Friday";
            break;
        case  6:
            day = "Saturday";
    }
    document.getElementById("demo").innerHTML = "Today is " + day;
    </script>

   <p id="bleh"></p>

<script>
function myFunction() {
    if(new Date().getDay() == 4)
        document.getElementById("bleh").innerHTML = "Check your grades.";
    }
}
</script>


    </body>
    </html>

不起作用的部分是这个:

<script>
function myFunction() {
    if(new Date().getDay() == 4)
        document.getElementById("bleh").innerHTML = "Check your grades.";
    }
}
</script>

PS 我会使用 OnTime,但我将我的网页托管在 github 页面之外,所以我无法在那里加载它,这就是我使用这种类型的 JS 的原因。

if (day = 4;) {

请注意您应该使用=====的单个= 还要去掉分号:

if (day === 4) {

此外,正如评论中所指出的,您应该将日期作为字符串检查,因为这就是您设置的内容!

if (day === "Thursday") {

将您的日期名称存储在这样的数组中不是更好吗

var days = [
  'Sunday',
  'Monday',
  'Tuesday',
  'Wednesday',
  'Thursday',
  'Friday',
  'Saturday'
];

function getCurrentDayName (dayIndex) {
  return days[dayIndex];
}

console.log(getCurrentDayName (new Date ().getDay()))

您可以像这样更轻松地获取日期名称:

 let today = new Date() demo.innerHTML = `Today is ${new Intl.DateTimeFormat('en-US', {weekday: 'long'}) .format(today)}`; let toDay = today.getDay() bleh.innerHTML = toDay === 4 ? 'Check your grades.' : `Not Thursday. Come back in ${(11 - toDay) % 7} days to re-check.`
 <p id="demo"></p> <p id="bleh"></p>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM