JS——时间补充

132 阅读1分钟

1.new Date(ms):把毫秒数转换为Date对象,表示从“1970/01/01 00:00:00”为起点,开始叠加的毫秒数。

注意:起点的时分秒还要加上当前所在的时区,北京时间的时区为东8区,起点时间实际为:“1970/01/01 08:00:00”

代码:

<script type="text/javascript">
		var dt=new Date(1000*60*1);//前进1分钟的毫秒数
		console.log(dt)
		dt=new Date(-1000*60*1);//倒退1分钟的毫秒数
		console.log(dt)
	</script>
            

image.png

2.new Date(dateStr):把字符串转换为Date对象

dateStr的格式:

1.yyyy/MM/dd HH:mm:ss,如果省略时间,返回的Date对象的时间为00:00:00.
2.yyyy-MM-dd HH:mm:ss,如果省略时间,返回的Date对象的时间为08:00:00(加上本地时区),如果不省略时间,此字符串在IE中会转换失败

代码:

<script type="text/javascript">
		var dt=new Date("2022/06/20")
		console.log(dt);
		dt=new Date("2022-06-20 12:42:30");
		console.log(dt);
	</script>
            

image.png

3.求两个时间相差多少时间(ms) 代码:

<script type="text/javascript">
		var nowdt=new Date();
		var sinadt=new Date("Thu Apr 12 16:26:30 +0800 2022")
		var absdt=nowdt-sinadt;
		console.log(absdt)
	</script>
            

image.png

4.new Date():时间传入的数据超过了一单位,会自动进位

代码:注意这里的month会比传入的大一个月,因为一般输出的month会比实际传入的小一个月

<script type="text/javascript">
		var dt=new Date(2022,3,46,8,30,20);
		console.log(dt)
	</script>
            

image.png