Date()函数小结 时间

Date()函数小结 时间let y new Date getFullYear let m new Date getMonth 1 lt 10 0 new Date getMonth 1 new Date getMonth 1 let d new Date getDate lt 10

大家好,我是讯享网,很高兴认识大家。
let y = new Date().getFullYear() let m = new Date().getMonth()+1<10?'0'+(new Date().getMonth()+1):(new Date().getMonth()+1) let d = new Date().getDate()<10?'0'+new Date().getDate():new Date().getDate() let hh = new Date().getHours()<10?'0'+new Date().getHours():new Date().getHours(); let mm = new Date().getMinutes()<10?'0'+new Date().getMinutes():new Date().getMinutes() let ss = new Date().getSeconds()<10?'0'+new Date().getSeconds():new Date().getSeconds() this.endDate = y +'-' + m + '-' + d + ' ' + hh + ':' + mm + ':' + ss this.endDate = this.endDate.replace(/\s+/g, 'T')+'+08:00' // 2020-08-14T11:33:26-07:00 

讯享网
讯享网var str = "2020-08-14T11:33:26+08:00"; var date = new Date(str).toJSON(); var newDate=new Date(+new Date(date)+8*3600*1000).toISOString().replace(/T/g,' ').replace(/\.[\d]{3}Z/,''); // 2019-03-18 10:58:37 

1.常用时间函数

let D=new Date() Date() //返回当日的日期和时间。  D.getDate() //从 Date 对象返回一个月中的某一天 (1 ~ 31)。 D.getDay() //从 Date 对象返回一周中的某一天 (0 ~ 6)。 D.getMonth() //从 Date 对象返回月份 (0 ~ 11)。 D.getFullYear() //从 Date 对象以四位数字返回年份。 D.getYear() //请使用 getFullYear() 方法代替。 D.getHours() //返回 Date 对象的小时 (0 ~ 23)。 D.getMinutes() //返回 Date 对象的分钟 (0 ~ 59)。 D.getSeconds() //返回 Date 对象的秒数 (0 ~ 59)。 D.getMilliseconds() //返回 Date 对象的毫秒(0 ~ 999)。 D.getTime() //返回 1970 年 1 月 1 日至今的毫秒数。 D.getTimezoneOffset() //返回本地时间与格林威治标准时间 (GMT) 的分钟差。 D.getUTCDate() //根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。 D.getUTCDay() //根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。 D.getUTCMonth() //根据世界时从 Date 对象返回月份 (0 ~ 11)。 D.getUTCFullYear() //根据世界时从 Date 对象返回四位数的年份。 D.getUTCHours() //根据世界时返回 Date 对象的小时 (0 ~ 23)。 D.getUTCMinutes() //根据世界时返回 Date 对象的分钟 (0 ~ 59)。 D.getUTCSeconds() //根据世界时返回 Date 对象的秒钟 (0 ~ 59)。 D.getUTCMilliseconds() //根据世界时返回 Date 对象的毫秒(0 ~ 999)。 D.parse() //返回1970年1月1日午夜到指定日期(字符串)的毫秒数。 D.setDate() //设置 Date 对象中月的某一天 (1 ~ 31)。 D.setMonth() //设置 Date 对象中月份 (0 ~ 11)。 D.setFullYear() //设置 Date 对象中的年份(四位数字)。 D.setYear() //请使用 setFullYear() 方法代替。 D.setHours() //设置 Date 对象中的小时 (0 ~ 23)。 D.setMinutes() //设置 Date 对象中的分钟 (0 ~ 59)。 D.setSeconds() //设置 Date 对象中的秒钟 (0 ~ 59)。 D.setMilliseconds() //设置 Date 对象中的毫秒 (0 ~ 999)。 D.setTime() //以毫秒设置 Date 对象。 D.setUTCDate() //根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。 D.setUTCMonth() //根据世界时设置 Date 对象中的月份 (0 ~ 11)。 D.setUTCFullYear() //根据世界时设置 Date 对象中的年份(四位数字)。 D.setUTCHours() //根据世界时设置 Date 对象中的小时 (0 ~ 23)。 D.setUTCMinutes() //根据世界时设置 Date 对象中的分钟 (0 ~ 59)。 D.setUTCSeconds() //根据世界时设置 Date 对象中的秒钟 (0 ~ 59)。 D.setUTCMilliseconds() //根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。 D.toSource() //返回该对象的源代码。 D.toString() //把 Date 对象转换为字符串。 D.toTimeString() //把 Date 对象的时间部分转换为字符串。 D.toDateString() //把 Date 对象的日期部分转换为字符串。 D.toGMTString() //请使用 toUTCString() 方法代替。 D.toUTCString() //根据世界时,把 Date 对象转换为字符串。 D.toLocaleString() //根据本地时间格式,把 Date 对象转换为字符串。 D.toLocaleTimeString() //根据本地时间格式,把 Date 对象的时间部分转换为字符串。 D.toLocaleDateString() //根据本地时间格式,把 Date 对象的日期部分转换为字符串。 D.UTC() //根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。 D.valueOf() //返回 Date 对象的原始值。 D.toLocaleDateString(0) // 返回 "2021/4/29" 
讯享网toDateString() 特定格式实现星期 月 日和年 toTimeString() 特定实现时分秒 时区 toLocalDateSting() 特定的地区显示星期 月 日 年 toLocalTimeString() 特定于实现 时间 时分 秒 toUTCString()特定实现完整UTC日期 

// 获取 国际时间戳 一相隔 八小时 二 固话国际时间处理


讯享网

包括年月日,时分秒,使用getUTC*()方法获取。 获取年:var y = date.getUTCFullYear(); 获取月: var m = date.getUTCMonth() ; 获取日: var d = date.getUTCDate(); 获取小时:var h= date.getUTCHours(); 获取分钟:var M = date.getUTCMinutes(); 获取秒钟:var s = date.getUTCSeconds(); ———————————————— var utc = Date.UTC(y,m,d,h,M,s); var gmt = Date.pare(y,m,d,h,M,s); 二、UTC日期到本地日期的转换 UTC日期到本地日期转换则要简单得多,先将UTC时间转换为日期格式,然后再转换为本地日期格式,例如: var date2 = new Date(utc); var localeString = date2.toLocaleString(); 或只要日期 var localeDateString = date2.toLocaleDateString(); 或只要时间 var localeTimeString = date2.toLocaleTimeString(); 
  • 常用时间问题
讯享网设置当前时间15var d = new Date() d.setDate(15) 
  • 时间可以对比较
new Date('2020-05-28')>new Date('2020-05-026')//true 
  • 可以用时间戳进行比较
讯享网new Date('2020-05-28').getTime()>new Date('2020-05-026').getTime()//true 
  • 根据出生日期算年龄
 var tim= new Date().getTime()-new Date(value) //获取时间戳 var age=new Date(tim).getYear()-1970 

查看原文:https://www.jianshu.com/p/f8d787b063a0

讯享网//方法一 function age(value){ 
    var n =new Date() //当前时间 var birthday = new Date(value) //出生时间 return times = n.getYear() - birthday.getYear() - ((n.getMonth() < birthday.getMonth() || n.getMonth() == birthday.getMonth() && n.getDate() < birthday.getDate()) ? 1 : 0); //年龄 } //方法二 /*根据出生日期算出年龄*/ function jsGetAge(strBirthday){ 
    var returnAge; var strBirthdayArr=strBirthday.split("-"); var birthYear = strBirthdayArr[0]; var birthMonth = strBirthdayArr[1]; var birthDay = strBirthdayArr[2]; d = new Date(); var nowYear = d.getFullYear(); var nowMonth = d.getMonth() + 1; var nowDay = d.getDate(); if(nowYear == birthYear){ 
    returnAge = 0;//同年 则为0岁 } else{ 
    var ageDiff = nowYear - birthYear ; //年之差 if(ageDiff > 0){ 
    if(nowMonth == birthMonth) { 
    var dayDiff = nowDay - birthDay;//日之差 if(dayDiff < 0) { 
    returnAge = ageDiff - 1; } else { 
    returnAge = ageDiff ; } } else { 
    var monthDiff = nowMonth - birthMonth;//月之差 if(monthDiff < 0) { 
    returnAge = ageDiff - 1; } else { 
    returnAge = ageDiff ; } } } else { 
    returnAge = -1;//返回-1 表示出生日期输入错误 晚于今天 } } return returnAge;//返回周岁年龄 } 
  • 时间戳格式化
// 日期+时间 function datetime (value) { 
    if (isValidDate(value)) { 
    return } var date = new Date(value * 1); var year = date.getFullYear() var month = date.getMonth() + 1 var day = date.getDate() var hour = date.getHours() var minute = date.getMinutes() var second = date.getSeconds() return [year, month, day].map(fn).join('-') + ' ' + [hour, minute, second].map(fn).join(':') function fn(n) { 
    n = n.toString() return n[1] ? n : '0' + n } }, 
  • 距离时间
讯享网 // 是否合法时间戳 function isValidDate (value) { 
    var date = new Date(value * 1); return !isNaN(date.getTime()); }, function datedistance (value) { 
    if (!isValidDate(value)) { 
    return } value = new Date(value * 1).getTime(); var time = new Date().getTime(); var dis = (time - value) / 1000; // console.log('datedistance', dis) if (dis < 300) { 
    return '刚刚' } else if (dis < 3600) { 
    return Math.floor(dis / 60) + '分钟前' } else if (dis < 3600 * 24) { 
    return Math.floor(dis / 3600) + '小时前' } else if (dis < 3600 * 24 * 30) { 
    return Math.floor(dis / 3600 / 24) + '天前' } else if (dis < 3600 * 24 * 365) { 
    return Math.floor(dis / 3600 / 24 / 30) + '月前' } else { 
    return Math.floor(dis / 3600 / 24 / 365) + '年前' } }, 
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Page Title</title> <meta name="viewport" content="width=device-width, initial-scale=1"> </head> <body> <script> // 1. 将时间戳转换成日期格式 // // 简单的一句代码 // var date = new Date(时间戳); //获取一个时间对象 // / // 1. 下面是获取时间日期的方法,需要什么样的格式自己拼接起来就好了 // 2. 更多好用的方法可以在这查到 -> http://www.w3school.com.cn/jsref/jsref_obj_date.asp // */ // date.getFullYear(); // 获取完整的年份(4位,1970) // date.getMonth(); // 获取月份(0-11,0代表1月,用的时候记得加上1) // date.getDate(); // 获取日(1-31) // date.getTime(); // 获取时间(从1970.1.1开始的毫秒数) // date.getHours(); // 获取小时数(0-23) // date.getMinutes(); // 获取分钟数(0-59) // date.getSeconds(); // 获取秒数(0-59) // let date = new Date(); // console.log(date.toLocaleString()) // http://www.365mini.com/page/javascript-date-tolocalestring.htm //时间转化成其他格式 // console.log(date.getDate())//获取当前的时间 见上面 // var myDate = new Date() //设置日期 // myDate.setFullYear(2008, 7, 9) // console.log(myDate) // var myDate = new Date() // myDate.setDate(myDate.getDate() + 20)//日期函数自动转化时间 // console.log(myDate) //日期比较大小 // var myDate = new Date(); // myDate.setFullYear(2008, 8, 9); // var today = new Date(); // if (myDate > today) { 
    // console.log('myDate'); // } // else { 
    // console.log("today"); // } //2 时间格式转化 // var date = new Date(90); // Y = date.getFullYear() + '-'; // M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'; // D = date.getDate() + ' '; // h = date.getHours() + ':'; // m = date.getMinutes() + ':'; // s = date.getSeconds(); // console.log(Y + M + D + h + m + s);  // 输出结果:2014-04-23 18:55:49 //时间格式 转化成时间戳 // var strtime = '2014-04-23 18:55:49:123'; // var date = new Date(strtime); // //传入一个时间格式,如果不传入就是获取现在的时间了,这样做不兼容火狐。 // // 可以这样做 //格式转化 // var date = new Date(strtime.replace(/-/g, '/')); // // 有三种方式获取,在后面会讲到三种方式的区别 // time1 = date.getTime(); // time2 = date.valueOf(); // time3 = Date.parse(date); // 三种获取的区别: // 第一、第二种:会精确到毫秒 // 第三种:只能精确到秒,毫秒将用0来代替 // 比如上面代码输出的结果(一眼就能看出区别): // 23 // 23 // 00 // //new Date("month dd,yyyy hh:mm:ss"); // new Date("month dd,yyyy"); // new Date("yyyy/MM/dd hh:mm:ss"); // new Date("yyyy/MM/dd"); // new Date(yyyy,mth,dd,hh,mm,ss); // new Date(yyyy,mth,dd); // new Date(ms); // new Date("September 16,2016 14:15:05"); // new Date("September 16,2016"); // new Date("2016/09/16 14:15:05"); // new Date("2016/09/16"); // new Date(2016,8,16,14,15,5); // 月份从0~11 // new Date(2016,8,16); // new Date(); </script> </body> </html> 

day.js参考:https://www.cnblogs.com/cjrfan/p/9154539.html

小讯
上一篇 2025-02-11 22:25
下一篇 2025-02-26 22:48

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/20283.html