我有一个日期字符串,我想使用date()
将其转换为日期对象。它正在这样做,但问题是,date()
处理任何日期为' MM-dd-yyyy'。
我尝试了以下代码:
var myDate = '09-06-2017'; //which is a string and is in 'dd-MM-yyyy' format from my perspective
var selectedDate = new Date(myDate);
$scope.minDate = $filter('date')(selectedDate, 'yyyy/MM/dd');
console.log(selectedDate);
console.log($scope.minDate);
它将在06-09-2017处理此日期,如果我通过' 13-06-2017'(即任何大于12的值),则会抛出“无效日期”#39 ;在控制台中。
所以我正在寻找一种解决方案,通过该解决方案,我可以告诉date()
以特定格式处理传递的字符串。
谢谢。
答案 0 :(得分:0)
不使用任何库,您可以将日期拆分为部分,并将它们传递给日期(年,月,日)构造函数。
var myDate = '09-06-2017';
var myDateParts = myDate.split('-');
var selectedDate = new Date(myDateParts[2], myDateParts[0] - 1, myDateParts[1]);
console.log(selectedDate);