js模仿php中strtotime()与date()函数实现方法
本文实例讲述了js模仿php中strtotime()与date()函数实现方法。分享给大家供大家参考。具体如下:
在js中没有像php中strtotime()与date()函数,可直接转换时间戳,下面我们来自定一个函数来实现js中具体有时间戳转换的功能。
functiondatetime_to_unix(datetime){
vartmp_datetime=datetime.replace(/:/g,'-');
tmp_datetime=tmp_datetime.replace(//g,'-');
vararr=tmp_datetime.split("-");
varnow=newDate(Date.UTC(arr[0],arr[1]-1,arr[2],arr[3]-8,arr[4],arr[5]));
returnparseInt(now.getTime()/1000);
}
functionunix_to_datetime(unix){
varnow=newDate(parseInt(unix)*1000);
returnnow.toLocaleString().replace(/年|月/g,"-").replace(/日/g,"");
}
vardatetime='2012-11-1610:36:50';
varunix=datetime_to_unix(datetime);
document.write(datetime+'转换后的时间戳为:'+unix+'
');
varunix=1353033300;
vardatetime=unix_to_datetime(unix);
document.write(unix+'转换后的日期为:'+datetime);
如果想弹出:2010-10-2010:00:00这个格式的也好办
<script>
functiongetLocalTime(nS){
returnnewDate(parseInt(nS)*1000).toLocaleString().replace(/年|月/g,"-").replace(/日/g,"");
}
alert(getLocalTime(1177824835));
</script>
完整实例
<scripttype="text/javascript">
varday1=parseInt(newDate().valueOf()/1000);
varday2=newDate(day1*1000);
functiongetLocalTime(nS){
returnnewDate(parseInt(nS)*1000).toLocaleString().replace(/:d{1,2}$/,'');
}
/*同上面函数*/
functiongetLocalTimes(nS){
returnnewDate(parseInt(nS)*1000).toLocaleString().substr(0,17);
}
functiongetLocalFormatTime(nS){
returnnewDate(parseInt(nS)*1000).toLocaleString().replace(/年|月/g,"-").replace(/日/g,"");
}
document.getElementById("btn1").onclick=function(){
alert(day1);
}
document.getElementById("btn2").onclick=function(){
alert(day2.toLocaleString());
}
document.getElementById("btn3").onclick=function(){
alert(getLocalTime(day1));
}
document.getElementById("btn4").onclick=function(){
alert(getLocalFormatTime(day1));
}
document.getElementById("btn5").onclick=function(){
alert(day2.getFullYear()+"-"+(day2.getMonth()+1)+"-"+day2.getDate()+""+day2.getHours()+":"+day2.getMinutes()+":"+day2.getSeconds());
}
</script>
希望本文所述对大家的javascript程序设计有所帮助。