javascript 接受多种日期格式的函数

javascript function to accept multiple date formats

用户希望使用以下格式输入日期:- mm-dd-yyyy 或 yyyy-mm-dd 或 m-d-yy 或 m-d-yyyy 或 mm/dd/yyyy 或 m/d/yy。 我的计划是捕获他们输入的任何内容并将其转换为 yyyy-mm-dd,因为这是必须提交日期字段值的格式。他们拒绝使用日历。我尝试了以下 JS 函数但没有成功。有什么想法吗?

    var value = ctrl.getValue();
    var date_input = new Date(value);
    var day = date_input.getDay();
    var month = date_input.getMonth() + 1;
    var year = date_input.getFullYear();
    var yyyy_MM_dd = year + "-" + month + "-" + day;
    return yyyy_MM_dd

因为用错了var day = date_input.getDay();

这样使用

var day = date_input.getDate();

function getDateFormat(value){
  var date_input = new Date(value);
  var day = date_input.getDate();
  var month = date_input.getMonth() + 1;
  var year = date_input.getFullYear();
  var yyyy_MM_dd = year + "-" + month + "-" + day;
  return yyyy_MM_dd;
}
console.log(getDateFormat("2017-12-30"));
console.log(getDateFormat("12-30-2017"));

.getDay 给了你几周的天数

还要确保使用 Date

接受的日期格式