javascript的日期对象
Date对象
Date对象是用来处理日期和时间的。
创建日期对象
var date = new Date(); //使用构造函数来创建一个当前时间的对象
var date = new Date("2020-03-01"); //创建一个指定时间的日期对象
var date = new Date("2020-03-01 13:22:31); //创建一个指定时间的日期对象
var date = new Date(2020,03,01,13,22,31);
var date = new Date(1583040340940); //参数:毫秒值,这个也被称为时间戳,创建距离JavaScript内部定义的起始时间1970年1月1日所经过的毫秒数,输出时间日期。
输出结果是:Sun Mar 01 2020 13:29:35 GMT+0800 (中国标准时间)
Date 类型保存的日期能够精确到 1970 年 1 月 1 日之前或之后的 285616 年。
Date构造函数当不传递任何参数的时候,返回的是当前时间。当传入参数的时候,获取的是传进去的时间
获取时间
使用日期对象的方法获取日期的指定部分
语法是 指定日期.getFullYear();
getFullYear(); //获取年份
getMonth(); //获取月份,但是这个地方需要**注意,月份是从0开始的,**所以返回值需要加1才是实际的月份。斜体样式
getDate(); //获取日期,即这个月的几号。
getDay(); //获取周几,0-6 ,0代表的是周六,然后就按照周日,周一的顺序排。
getMilliseconds();//获取毫秒值
getSeconds();//获取秒
getMinutes();//获取分钟
getHours();//获取小时
case: 将日期格式化成字符串
function formatDate(date) {
var d = new Date(date),
month = '' + (d.getMonth() + 1),
day = '' + d.getDate(),
year = d.getFullYear();
if (month.length < 2) month = '0' + month;
if (day.length < 2) day = '0' + day;
return [year, month, day].join('-');
}
console.log(formatDate('Sun May 13,2019'));
case:获取当前时间 年月日时分秒 (刷新)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="box"></div>
</body>
<script>
function showNowTime(){
var date = new Date();
var year = date.getFullYear(); // 获取年
var month = date.getMonth()+1; // 获取月 日期对象中使用0~11来表示1~12月
var d = date.getDate(); // 获取日
var day = date.getDay(); // 获取星期几
var hour = date.getHours(); // 获取到时
var minute = date.getMinutes(); // 获取分钟
var second = date.getSeconds(); // 获取到秒数
// var msecond = date.getMilliseconds(); // 获取到毫秒数
// console.log(month);
box.innerText = ("现在是北京时间:"+year+"年"+month+"月"+d
+"日。星期"+day+"。"+hour+"时"+minute+"分"+second+"秒");
}
setInterval(showNowTime,1000);
</script>
</html>
日期转为毫秒数(时间戳)
格林威治时间/格林尼治时间
Date.parse(“2020-0-01”) // 获取1970年到设定时间的毫秒数
new Date().getTime()
+new Date();
这三种方法都可以获取。
case: 计算日期差值。
var date1 = new Date('2013/04/02 18:00')
var date2 = new Date('2013/04/02 19:22:21')
var s1 = date1.getTime(),s2 = date2.getTime();
var total = (s2 - s1)/1000;
var day = parseInt(total / (24*60*60));//计算整数天数
var afterDay = total - day*24*60*60;//取得算出天数后剩余的秒数
var hour = parseInt(afterDay/(60*60));//计算整数小时数
var afterHour = total - day*24*60*60 - hour*60*60;//取得算出小时数后剩余的秒数
var min = parseInt(afterHour/60);//计算整数分
var afterMin = total - day*24*60*60 - hour*60*60 - min*60;//取得算出分后剩余的秒数
日期格式化
date.toLocalString();//本地风格的日期格式
date.toLocaleDateString(); // 获取日期
date.toLocaleTimeString(); // 获取时间
设置时间
date.setFullYear(2020) // 将日期对象中的年份设置为2020
date.setMonth(3) // 将日期对象中的月份设置为3月份
date.setDate(1) // 将日期对象中的日期设置为1号
date.setHours(12) // 将日期对象中的时间设置为12点
date.setMinutes(56) // 将日期对象中的分钟设置为56分
date.setSeconds(23) // 将日期对象中的描述设置为23秒
date.setTime(0) // 将日期对象设置为0的时间戳。
通过使用针对日期对象的方法,我们可以很容易地对日期进行操作。
在下面的例子中,我们为日期对象设置了一个特定的日期 (2020 年 3 月 1 日):
var myDate=new Date()
myDate.setFullYear(2020,2,1)
注意:表示月份的参数介于 0 到 11 之间。也就是说,如果希望把月设置为 3 月,则参数应该是 2。
在下面的例子中,我们将日期对象设置为 5 天后的日期:
var myDate=new Date()
myDate.setDate(myDate.getDate()+5);
注意:如果增加天数会改变月份或者年份,那么日期对象会自动完成这种转换。
以上内容仅为在逆战班所学总结,见解可能有误,如有错误,望能指出,不胜感激。
特此声明:如需转载请注明出处,如有疑问请及时提出以便于改正,如有侵权,联系删除,谢谢。