【问题标题】:How to get the day from a particular date using JavaScript如何使用 JavaScript 从特定日期获取日期
【发布时间】:2009-01-30 14:22:41
【问题描述】:

我是 JavaScript 新手。我的要求是 T 想要在特定日期(如星期日、星期一...)弹出一条消息,直到选择日期。

我尝试了getday() 功能,但它不起作用。 请建议如何执行此操作。

【问题讨论】:

  • 记住,javascript 是区分大小写的

标签: javascript date


【解决方案1】:
var date = new Date();
var day = date.getDay();

day 现在包含一个从零到六的数字;零是星期日,一是星期一,依此类推。

剩下的就是将该数字翻译成英文(或任何其他语言)字符串作为日期名称:

var name = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][day];

【讨论】:

    【解决方案2】:
    var days= ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
    var today = new Date();
    document.write(days[today.getDay()]);
    

    【讨论】:

      【解决方案3】:

      This page 似乎可以满足您的需求。

      我们要做的是添加 getMonthName() 和 getDayName() 我们所有日期的方法,以便我们 可以通过以下方式获取月份名称或日期名称 直接调用这些新方法 而不必调用 getMonth() 或 getDay() 然后做一个数组 查找相应的名称。

      你可以这样做:

      var today = new Date;
      alert(today.getDayName());
      

      【讨论】:

        【解决方案4】:

        使用 ECMAScript 国际化 API,它是 ECMA 402 的一部分,该 API 的第二版与 ECMAScript 2015,即第 6 版,即 ES6 一起推出。

        const knownMonday = new Date(Date.UTC(2000, 0, 3, 0, 0, 0));
        const mondayName = new Intl.DateTimeFormat([], {
          weekday: 'long',
          timeZone: 'UTC'
        }).format(knownMonday);
        console.log(`Name of Monday in current "locale": "${mondayName}"`);

        请注意,虽然这需要更多代码,但它使您不必在您编写的每个应用程序中以您想要支持的每种语言输入日期的名称。

        请注意,我在格式化时使用Date.UTC(year, month, day) 来初始化DatetimeZone: 'UTC'。这是因为不知道读者可能在哪个时区;鉴于此,我在声明和 Date 的格式中都使用 UTC,以确保不会因时区差异而改变。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2023-03-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多