简体   繁体   中英

How to convert string to Date object?

如何将日期字符串转换为Date对象?

2011-09-19T19:49:21+04:00

The best way to do this is using new Date()

Example:

var stringDate = '2011-09-19T19:49:21+04:00'
var date = new Date(stringDate) // Mon Sep 19 2011 08:49:21 GMT-0700 (PDT)

Use jquery ui date parser.

http://docs.jquery.com/UI/Datepicker/parseDate

This is the best function for parsing dates out of strings that I've had the pleasure to work with in js. And as you added the tag jquery it's probably the best solution for you.

I just wrote a javascript function that works for any date input field. I'm using jquery date picker and it works well with that.

<!DOCTYPE html>
<html>
<body>

<p>Click the button to extract characters from the string.</p>

<button onclick="myFunction()">Try it</button>

<p id="enddate"></p>
<p id="startDate"></p>

<script>
  function myFunction() {
//var str = document.getElementById("start_date).value;
// var end = document.getElementById("end_date).value;

  var str = "2014-11-26";
  var end = "2014-11-22";


//first four strings (year) - starting from zero (first parameter), ends at 4th character (second parameter). It excludes the last character.
var year = str.substring(0,4);
var month = str.substring(5,7);//first two characters since 5th. It excludes the 7th character.
var date = str.substring(8,10);//first two character since 8th char. It excludes the 10th character.


var endYear = end.substring(0,4);
var endMonth = end.substring(5,7);
var endDate = end.substring(8,10);

var startDate = new Date(year, month-1, date);
var endDate = new Date(endYear, endMonth-1, endDate);

document.getElementById("enddate").HTML=endDate;
document.getElementById("startDate").HTML=startDate;


if (startDate > endDate) {
  alert('start date should be less than end date');
  return false;

} else {

 alert('date is ok..');
 return true;
}



}
 </script>

 </body>
 </html>

hope it helps. Happy coding :)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM