首页 > 编程语言 > 详细

Javascript 时间与时间戳处理相关

时间:2021-05-27 22:17:13      阅读:24      评论:0      收藏:0      [点我收藏+]
var myDate = new Date();
myDate.getYear(); //获取当前年份(2位)
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.getMonth(); //获取当前月份(0-11,0代表1月)
myDate.getDate(); //获取当前日(1-31)
myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours(); //获取当前小时数(0-23)
myDate.getMinutes(); //获取当前分钟数(0-59)
myDate.getSeconds(); //获取当前秒数(0-59)
myDate.getMilliseconds(); //获取当前毫秒数(0-999)
myDate.toLocaleDateString(); //获取当前日期
myDate.toLocaleTimeString(); //获取当前时间
myDate.toLocaleString( ); //获取日期与时间

获取当前13位时间戳的方法

//第一种方法
var timestamp =Date.parse(new Date());
//1280977330000 注意:这里得到的结果将后三位(毫秒)转换成了000显示,使用时可能会出现问题

//第二种方法
var timestamp =(new Date()).valueOf();
//结果:1280977330748

//第三种方法
var timestamp=new Date().getTime();
//结果:1280977330748

获取当前10位时间戳

// 方法一
Math.round(new Date().getTime()/1000).toString();

// 方法二
Date.parse( new Date() ).toString().substr(0,10);

// 方法二

(new Date()).valueOf().toString().substr(0,10);

 

JS Date对象常用的带参数初始化方式: 

//1、用整数初始化日期对象 
var date1 = new Date(2017,06,06); console.log(date1); // Thu Jul 06 2017 00:00:00 GMT+0800 (中国标准时间) 
var date1 = new Date(2017,1,1); console.log(date1); // Wed Feb 01 2017 00:00:00 GMT+0800 (中国标准时间) 
var date1 = new Date(2017,01-2,01); console.log(date1); // Thu Dec 01 2016 00:00:00 GMT+0800 (中国标准时间) 
var date1 =new Date(2017,06,06,06,06,06); console.log(date1); // Thu Jul 06 2017 06:06:06 GMT+0800 (中国标准时间) 
//说明: new Date( year, month, date, hrs, min, sec) 按给定的参数创建一日期对象


//2、用字符串初始化日期对象 
var date2 = new Date(“2017/06/06”); console.log(date2); // Tue Jun 06 2017 00:00:00 GMT+0800 (中国标准时间) 
var date2 = new Date(“2017-08-08”); console.log(date2); // Tue Aug 08 2017 08:00:00 GMT+0800 (中国标准时间) 
var date2 = new Date(“2017-9-9”); console.log(date2); // Sat Sep 09 2017 00:00:00 GMT+0800 (中国标准时间) 
//说明:如果字符串模式不支持短横杠模式,则进行字符串替换: 
var strTime=”2011-04-16”; 
var date2= new Date(Date.parse(strTime.replace(/-/g, “/”))); // /-/g为正则表达式(RegExp) 对象,表示全局替换-为/。

//3、用毫秒时间戳初始化日期对象 
var timestamp=new Date().getTime(); console.log( new Date(timestamp) ); //Tue Jun 06 2017 11:06:59 GMT+0800 (中国标准时间) 
var date3 = new Date( timestamp - 1 * 60 * 60 * 1000); console.log(date3); // Tue Jun 06 2017 10:06:59 GMT+0800 (中国标准时间) 
//说明:时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。时间戳唯一地标识某一刻的时间。

 

注意: 直接获取当前时间的对应月份需+1,但是如果是以传参的方式生成时间对象,返回的月份需要做区分

//假设当前时间为:2021/05/27 20:41:00,则:
new Date().getMonth()
// 4 ,所以在使用的时候需要+1


//当以参数形式传入
new Date(2021,05,27).getMonth()
// 5

//当以参数形式传入
new Date(‘2021/05/27‘).getMonth()
// 4

 

js中单独调用new Date(),例如document.write(new Date());

显示的结果是:Mar 31 10:10:43 UTC+0800 2012 这种格式的时间

 

但是用new Date() 参与计算会自动转换为从1970.1.1开始的毫秒数。

Javascript 时间与时间戳处理相关

原文:https://www.cnblogs.com/sonechao/p/14819675.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!