js日期相关

js日期相关

时间戳转正常日期时间

1469512964000 —> 2016/7/26 下午2:02

var getLocalTime = function(nS) {
    // 13位时间戳
    return new Date(parseInt(nS)).toLocaleString().substr(0,17);
    // 10位时间戳
    //  return new Date(parseInt(nS*1000)).toLocaleString().substr(0,17)
}
console.log(getLocalTime(1469512964000));      

参考http://www.cnblogs.com/sufei/archive/2012/12/03/2799480.html

时间戳转正常日期时间

1469512964000 —> 2016/07/26 14:02

var date = new Date(nS);
var Y = date.getFullYear() + '/';
var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '/';
var D = (date.getDate()+1 < 10 ? '0'+(date.getDate()+1) : var h = date.getHours() + ':';
var m = date.getMinutes();
//var s = date.getSeconds();
return Y+M+D+h+m;

js时间转时间戳

Thu Jul 14 2016 00:00:00 GMT+0800 (中国标准时间) —> 1468425600000

var date = new Date();    // Thu Jul 14 2016 00:00:00 GMT+0800 (中国标准时间)
Date.parse(date);            // 1468425600000
Math.floor(new Date("2018/03/01 00:00:00").getTime() / 1000)
在ios的safari碰到过一个坑,不能使用2018-03-01的格式!!!
参考 http://blog.csdn.net/u013184759/article/details/51984080

时间和当前时间对比

Date.parse('2018-01-09 22:43:12') < Date.now()

碰到问题后再继续更新。。。

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript">
// 获取当前时间戳(以s为单位)
var timestamp = Date.parse(new Date());
timestamp = timestamp / 1000;
//当前时间戳为:1403149534
console.log("当前时间戳为:" + timestamp);

// 获取某个时间格式的时间戳
var stringTime = "2014-07-10 10:21:12";
var timestamp2 = Date.parse(new Date(stringTime));
timestamp2 = timestamp2 / 1000;
//2014-07-10 10:21:12的时间戳为:1404958872 
console.log(stringTime + "的时间戳为:" + timestamp2);

// 将当前时间换成时间格式字符串
var timestamp3 = 1403058804;
var newDate = new Date();
newDate.setTime(timestamp3 * 1000);
// Wed Jun 18 2014 
console.log(newDate.toDateString());
// Wed, 18 Jun 2014 02:33:24 GMT 
console.log(newDate.toGMTString());
// 2014-06-18T02:33:24.000Z
console.log(newDate.toISOString());
// 2014-06-18T02:33:24.000Z 
console.log(newDate.toJSON());
// 2014年6月18日 
console.log(newDate.toLocaleDateString());
// 2014年6月18日 上午10:33:24 
console.log(newDate.toLocaleString());
// 上午10:33:24 
console.log(newDate.toLocaleTimeString());
// Wed Jun 18 2014 10:33:24 GMT+0800 (中国标准时间)
console.log(newDate.toString());
// 10:33:24 GMT+0800 (中国标准时间) 
console.log(newDate.toTimeString());
// Wed, 18 Jun 2014 02:33:24 GMT
console.log(newDate.toUTCString());

Date.prototype.format = function(format) {
       var date = {
              "M+": this.getMonth() + 1,
              "d+": this.getDate(),
              "h+": this.getHours(),
              "m+": this.getMinutes(),
              "s+": this.getSeconds(),
              "q+": Math.floor((this.getMonth() + 3) / 3),
              "S+": this.getMilliseconds()
       };
       if (/(y+)/i.test(format)) {
              format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length));
       }
       for (var k in date) {
              if (new RegExp("(" + k + ")").test(format)) {
                     format = format.replace(RegExp.$1, RegExp.$1.length == 1
                            ? date[k] : ("00" + date[k]).substr(("" + date[k]).length));
              }
       }
       return format;
}
console.log(newDate.format('yyyy-MM-dd h:m:s'));

</script>