function getNums(str){
var reg = /(\d+)[^\d](\d+)[^\d](\d+)/g;
var numArr = regexec(str);
return [parseInt(numArr[1]),parseInt(numArr[2])-1,parseInt(numArr[3])];
}
function getMonths(s1,s2){
var a1 = getNums(s1);
var a2 = getNums(s2);
return (a2[0]-a1[0])12+a2[1]-a1[1];
}
consolelog(getMonths("2017-01-01","2018-12-12"));
你为啥不直接在数据库中计算时间差就好了,在JS中计算问题很多,因为JS时间是取的本地电脑时间,如果本地电脑时间不准那就直接显示错误了,当然如果一定要在JS中计算那转成JS的时间就可以算了,具体参照网页链接
格式化时间
参数: formatStr 格式化串 y年,m月,d日,h小时,i分钟,s秒钟 缺省值 "y-m-d h:i:s"
fdate 要格式化的时间(时间戳)UTC秒数 缺省值 当前时间
实例: formatDate() 当前时间默认格式 如 2011-4-12 12:51:12
formatDate('y/m/d', 2132132131) 某时间格式为 年月日 如 2010/12/5
function formatDate(formatStr, fdate)
{
var fTime, fStr = 'ymdhis';
if (!formatStr)
formatStr= "y-m-d h:i:s";
if (fdate)
fTime = new Date(fdate);
else
fTime = new Date();
var formatArr = [
fTimegetFullYear()toString(),
(fTimegetMonth()+1)toString(),
fTimegetDate()toString(),
fTimegetHours()toString(),
fTimegetMinutes()toString(),
fTimegetSeconds()toString()
]
for (var i=0; i<formatArrlength; i++)
{
formatStr = formatStrreplace(fStrcharAt(i), formatArr[i]);
}
return formatStr;
}
步骤一:将日期转换成我们常用的“yyyy-MM-dd hh:mm:ss”这种格式,我们可以对日期进行获取然后组装,具体代码如下所示:
步骤二:将日期转换成“某年某月某日”这种日期格式,此时我们只需要调用Date类的toLocaleDateString方法即可。
步骤三:直接获取“hh:mm:ss”时间,此时我们只需要调用Date的toLocaleTimeString方法即可。
步骤四:获取“获取"某年某月某日 hh:mm:ss"”这种格式,我们需要调用Date类的toLocaleString方法。
步骤五:调用dateFormat()方法。
6
步骤六:测试。启动项目后,浏览器中输入>
参考资料
百度经验搜狗[引用时间2018-5-3]
js怎么把时间戳转换为日期格式 前端有时候可能要从日期控件中拿到日期,然后参与计算,下边记录一个把日期字符串转换成时间戳的小函数。
dateStr格式为“2014-05-08 00:22:11 ”
function get_unix_time(dateStr)
{
var newstr = dateStrreplace(/-/g,'/');
var date = new Date(newstr);
var time_str = dategetTime()toString();
return time_strsubstr(0, 10);
}
js中怎么将时间戳转换为 yyyy-mm-dd格式
有三种常见方式:1、functiongetLocalTime(nS){returnnewDate(parseInt(nS)1000)toLocaleString()replace(/:\d{1,2}$/,'');}alert(getLocalTime(1293072805));结果是2010年12月23日10:532、functiongetLocalTime(nS){returnnewDate(parseInt(nS)1000)toLocaleString()substr(0,17)}alert(getLocalTime(1293072805));3、functiongetLocalTime(nS){returnnewDate(parseInt(nS)1000)toLocaleString()replace(/年|月/g,"-")replace(/日/g,"");}alert(getLocalTime(1177824835));
JS 中2015年04月07日日期格式怎么转换成时间戳格式
function get_unix_time(dateStr){ dateStr = dateStrreplace('年','-'); dateStr = dateStrreplace('月','-'); dateStr = dateStrreplace('日','-'); var newstr = dateStrreplace(/-/g,'/'); var date = new Date(newstr); var time_str = dategetTime()toString(); return time_strsubstr(0, 10);}get_unix_time("2015年04月07日");
js时间戳怎么转成日期格式
使用Date可以将毫秒时间戳转为Date对象,然后可以根据Date的方法生成需要的日期格式
如: new Date(1432269413352)
你好,很简单,直接使用Date对象就可以了。
var d = new Date(1432185095381); 如果时间戳是字符串,需要先转换一下 var timestamp = "1432185095381"; var d = new Date(+timestamp);var Y = dgetFullYear(); 2015var M = dgetMonth(); 4var day = dgetDate(); 21consolelog(({})toStringcall(d)); [object Date]
希望是你想要的答案,望采纳~~
使用Date对象可以将毫秒时间戳转为js的Date对象 然后再调用Date的getFullYear、getMonth、getDate等方法拼成想要的日期格式 var date = new Date(1433665089755);alert(dategetFullYear() + '/' + (dategetMonth() + 1) + '/' + dategetDate())
时间戳转换成日期时间2014-8-8 下午11:40:20function formatDate(ns){return new Date(parseInt(ns) 1000)toLocaleString()replace(/年|月/g, "-")replace(/日/g, " ");}时间戳转换成八位日期2014-5-5 function userDate(uData){var myDate = new Date(uData1000);var year = myDategetFullYear();var month = myDategetMonth() + 1;var day = myDategetDate();return year + '-' + month + '-' + day;}时间戳转换成四位时间10:10 function userTime(uTime){var myDate = new Date(uTime1000);var hours = myDategetHours();var minutes = myDategetMinutes();return hours + ':' + minutes;}时间戳转换成四位时间10:10:00function userTime(uTime){var myDate = new Date(uTime1000);var hours = myDategetHours();var minutes = myDategetMinutes();var second = myDategetSeconds();return hours + ':' + minutes + ':' + second;}定时提醒设置的时间传入 (2014,05,15)返回成2014-01-21function setDate(year,month,day){return year + '-' + month + '-' + day; }定时提醒设置的时间传入 (01:02)返回成01:01:00function setTime(hour,minute){return hour + ':' + minute+ ':00';}时间格式2014-02-02 14:10:00改成时间戳function js_strto_time(str_time){var new_str = str_timereplace(/:/g,"-");new_str = new_strreplace(/ /g,"-");var arr = new_strsplit("-");var datum = new Date(DateUTC(arr[0],arr[1]-1,arr[2],arr[3]-8,arr[4],arr[5]));return strtotime = datumgetTime()/1000;}时间戳改成时间格式2014-12-12 下午01:10function js_date_time(unixtime){var timestr = new Date(parseInt(unixtime) 1000);var datetime = timestrtoLocaleString()replace(/年|月/g,"-")replace(/日/g," ");return datetime;}
该方法中需要传入时间戳和需要的时间格式即可, 该方法支持任何形式的时间格式输出,
其中timestamp为传入的时间戳,format为要输出的格式。
亲测结果如下:
js将时间戳转为日期格式
推荐一个JavaScript常用函数库 jutils
其中的formatDate(javascript时间戳转换)函数支持自定义格式,可以显示年,月,周,日,时,分,秒多种形式的日期和时间。
例:
输出格式为 => 年、月、日、时、分、秒
var date = jutilsformatDate(new Date(15336868881000),"YYYY-MM-DD HH:ii:ss");consolelog(date);
// 2019-07-09 19:44:01
更多自定义返回格式可以参照:
一行js代码实现时间戳转时间格式
下面是相关源码的截图
js将时间戳转为日期格式
以上就是关于请问怎么用js把两个字符串转为时间格式,并获取两个时间之间的月份数,如'2017-01-01','2018-17-12'全部的内容,包括:请问怎么用js把两个字符串转为时间格式,并获取两个时间之间的月份数,如'2017-01-01','2018-17-12'、在数据库中获取到了datetime格式的时间(2018-08-06 11:09:02)想在js中获取当前时间并计算时间差、怎样在js里面格式化日期等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)