new Date() 常用方法

var myDate = new Date();
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.toLocaleString( ); //获取 日期与时间

myDate.getYear(); //获取当前 年份(2位)
myDate.getMonth(); //获取当前 月份(0-11,0代表1月)         // 所以获取当前月份是myDate.getMonth()+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(); //获取当前 日期
var mytime=myDate.toLocaleTimeString(); //获取当前 时间

// js获取时间的时间戳
new Date().getTime(); //十三位的时间戳 1626244866842
new Date().valueOf(); //十三位的时间戳 1626244866842
Date.parse(new Date()); //前两种比较推荐,这一种会将毫秒数全部转成000, 1626244862000
  
// 字符串日期转换成时间格式
`new Date()`可以有参数,如果没有参数获取的是当前的时间对象,参数可以是时间字符串或者是时间戳,则转换对应时间的时间对象.但是要注意格式
new Date('2021/07/14'); //正确 , Wed Jul 14 2021 00:00:00 GMT+0800 (中国标准时间)
new Date('2021,07,14'); //正确 , Wed Jul 14 2021 00:00:00 GMT+0800 (中国标准时间)
new Date(1626244866842); //正确 , Wed Jul 14 2021 14:41:06 GMT+0800 (中国标准时间)

new Date('2021-07-14'); // 错误的,这种格式是不支持的,
new Date("2021-07-14".replace(/-/g,  "/")); //Sat Apr 16 2011 00:00:00 GMT+0800 (中国标准时间)

// 使用 new Date()进行计算
	// 如果直接使用`new Date()`进行计算,默认会转换成从1970.1.1时开始的毫秒数.
  new Date('2021,07,13') - 1000 ; 1626105600000 - 1000 // 1626105599000

  let baseTime = '2015-03-19';
  let res = new Date(baseTime.replace(/-/g,'/'));
  console.log(res);

// 计算两时间段相差
const time = new Date('2023-01-01 12:01:35').getTime()
let setTime =  ''    
const setIntervalFn = setInterval(() => {
  const subtime = (new Date().getTime() - time) / 1000;    //计算时间差,并将毫秒转化为秒
  
  const days = parseInt(subtime / 86400);  //天  24*60*60*1000
  const hours = parseInt(subtime / 3600) - 24 * days;   //小时  60*60  总小时数-过去小时数=现在小时数
  const mins = parseInt(subtime % 3600 / 60);    //分钟 - (day*24)  以60秒为一整份  取余 剩下秒数 秒数/60就是分钟数
  const secs = parseInt(subtime % 60);   //以60秒为一整份  取余  剩下秒数
  setTime = `${days} 天 ${hours} 小时 ${mins} 分钟 ${secs} 秒 `
  console.log("getTime 时间差是:", setTime);
}, 1000);
clearInterval(setIntervalFn)



猜你喜欢

转载自blog.csdn.net/m0_53574149/article/details/130363975