从日期获取日期名称,格式为dd-mm-yyyy?

时间:2020-09-15 10:41:29

标签: javascript datetimepicker

我需要一种从DD-MM-YYYY格式的日期获取日期名称的方法,例如星期一,星期二 我正在使用bootstrap 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?

2 个答案:

答案 0 :(得分:3)

Date构造函数is strongly discouraged按原样分析字符串,因此,我建议您通过以下方式将日期字符串转换为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))      

答案 1 :(得分:0)

function get_day(date){
    let d=new Date(date);
    let days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
    let day_index=d.getDay();
    return days[day_index]
    }

let today=new Date();
console.log("today is",get_day(today))