日期:2014-05-16 浏览次数:20378 次
function getDateFromString(str) { var reg = /^(\d+)年(\d+)月(\d+)日 (\d+):(\d+)/; var s = str.match(reg); var result=""; if(s) { result = new Date(s[1],s[2],s[3],s[4],s[5]); } return result ; } var result = getDateFromString("2011年5月25日 17:13"); alert(result);
------解决方案--------------------
sorry
月份忘记减一了。(日期的有效性没有考虑,如果需要自己加验证。)
result = new Date(s[1],parseInt(s[2])-1,s[3],s[4],s[5]);
------解决方案--------------------
var s1 = "2011年5月25日 17:13"; var s2 = "2011年5月25日 1:12"; var d1 = convertToDate(s1); var d2 = convertToDate(s2); var secs = dateDiff(d1,d2); alert(secs); //返回相差多少秒 function dateDiff(d1,d2){ var sp = d1 - d2; return (sp/1000); } function convertToDate(s){ var arr = s.split(/年|月|日\s|:/); var date = new Date(arr[0],arr[1],arr[2],arr[3],arr[4]); return date; }
------解决方案--------------------
借1楼代码用下
计算时间差转换成天的
function getDateFromString(str){ var reg = /^(\d+)年(\d+)月(\d+)日 (\d+):(\d+)/; var s = str.match(reg); var result=""; if(s) { result = new Date(s[1],s[2] - 1,s[3],s[4],s[5]); } return result ; } var result1 = getDateFromString("2011年5月25日 17:13"); var result2 = getDateFromString("2010年12月12日 8:00"); var result = (result1 - result2) / (1000 * 60 * 60 * 24); //计算天 alert(result);
------解决方案--------------------
两个日期可以比较一下谁比较大
用大的减去小的
计算结果带小数的话转换一下就OK