为了账号安全,请及时绑定邮箱和手机立即绑定

一天中的时间问候代码不能以 am/pm 格式工作

一天中的时间问候代码不能以 am/pm 格式工作

阿波罗的战车 2021-06-09 13:50:51
是的,所以问题很简单,我认为解决方案也应该很简单,但我是一个完整的新手,所以不知道它是如何工作的。如果时间来源是 am pm 格式,下面的代码将不起作用,知道如何使其在这两种情况下都起作用吗?var today = new Date ();var hourNow = today.getHours();var greeting;if (hourNow > 18) {  greeting = 'Good Evening!';} else if (hourNow > 12) {  greeting = 'Good Afternoon!';} else if (hourNow > 0) {  greeting = 'Good morning!';} else {  greeting = 'Welcome!';}document.write('<h1>' + greeting + '</h1>');
查看完整描述

2 回答

?
翻翻过去那场雪

TA贡献2065条经验 获得超14个赞

我发现了这个问题。按照我的理解,对于 JS 代码,12:59 仍然是 12,因此“早上好!”。所以我必须提前一小时设置hourNow。像这样:


   var today = new Date();

    var hourNow = today.getHours();

    var greeting;


    if (hourNow > 16) {

      greeting = 'Good Evening!';

    } else if (hourNow > 11) {

      greeting = 'Good Afternoon!';

    } else if (hourNow > 0) {

      greeting = 'Good morning!';

    } else {

      greeting = 'Welcome!';

    }


    console.log(greeting);

这样我就会得到下午好!中午12点以后,晚上好!下午5点以后


查看完整回答
反对 回复 2021-06-11
?
HUWWW

TA贡献1874条经验 获得超12个赞

正如 Turbo 所评论的那样,Date 对象不会以 AM/PM 格式存储数据,因此您的代码必须在任何地方都可以使用,并且我在浏览器中测试了它是否适合我。


var today = new Date ();

console.log(today);       // Sun May 26 2019 18:04:28 GMT+0530 (India Standard Time)

var hourNow = today.getHours();

console.log(hourNow);     // 18


查看完整回答
反对 回复 2021-06-11
  • 2 回答
  • 0 关注
  • 185 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信