首页 > 解决方案 > 从日期获取日期名称,格式为 dd-mm-yyyy?

问题描述

我需要一种获取日期名称的方法,例如星期一、星期二,日期格式为 DD-MM-YYYY 我正在使用引导程序 datetimepicker,当我选择日期时,该值的格式为 DD-MM- YYYY,我不能用getDay(),因为格式不符合。

我也不能使用new Date(),因为我必须是从日历中选择的日期。不是今天的日期。当我运行以下代码时,我收到错误:

date.getDay()不是函数。

$('#datepicker').datetimepicker().on('dp.change', function (event) {
        let date = $(this).val();
        let day = date.getDay();
        console.log(day);
      });
```

Anyone any ideas?

标签: javascriptdatetimepicker

解决方案


强烈建议不要Date通过构造函数按原样解析字符串,因此我宁愿建议将您的日期字符串转换为以下方式:Date

const dateStr = '15-09-2020',

      getWeekday = s => {
        const [dd, mm, yyyy] = s.split('-'),
              date = new Date(yyyy, mm-1, dd)
        return date.toLocaleDateString('en-US', {weekday: 'long'})
      }
      
console.log(getWeekday(dateStr))      


推荐阅读