AI 助理
备案 控制台
开发者社区 开发与运维 文章 正文

JS之获取当前时间 增加 减少天数,并格式化返回(在Date原型上挂载方法实现)

简介: JS之获取当前时间 增加 减少天数,并格式化返回(在Date原型上挂载方法实现)

20201125150501547.jpg


JS的日期操作:


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(); //获取当前日期
var mytime=myDate.toLocaleTimeString(); //获取当前时间
myDate.toLocaleString( ); //获取日期与时间


在下面的例子中,我们将日期对象设置为 5 天后的日期:


var myDate=new Date();
myDate.setDate(myDate.getDate()+5);


设置获取日期格式化方法:


// 获取当前时间
Date.prototype.Format = function(fmt) {
  var o = {
    'M+': this.getMonth() + 1, //月份
    'd+': this.getDate(), //日
    'H+': this.getHours(), //小时
    'm+': this.getMinutes(), //分
    's+': this.getSeconds(), //秒
    'q+': Math.floor((this.getMonth() + 3) / 3), //季度
    S: this.getMilliseconds() //毫秒
  }
  if (/(y+)/.test(fmt))
    fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
  for (var k in o)
    if (new RegExp('(' + k + ')').test(fmt))
      fmt = fmt.replace(
        RegExp.$1,
        RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length)
      )
  return fmt
}
// 增加天数或者减少天数
Date.prototype.FormatAddOne = function(fmt) {
  // 增加天数 这次增加为增加1天
  this.setDate(this.getDate() + 1)
  var o = {
    'M+': this.getMonth() + 1, //月份
    'd+': this.getDate(), //日
    'H+': this.getHours(), //小时
    'm+': this.getMinutes(), //分
    's+': this.getSeconds(), //秒
    'q+': Math.floor((this.getMonth() + 3) / 3), //季度
    S: this.getMilliseconds() //毫秒
  }
  if (/(y+)/.test(fmt))
    fmt = fmt.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length))
  for (var k in o)
    if (new RegExp('(' + k + ')').test(fmt))
      fmt = fmt.replace(
        RegExp.$1,
        RegExp.$1.length == 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length)
      )
  return fmt
}


调用方法:


var date1 = new Date().Format('yyyyMMdd')
var date2 = new Date().Format('yyyy-MM-dd')
var date3 = new Date().FormatAddOne('yyyy-MM-dd HH:mm:ss')
console.log(date1, 'date1')
console.log(date2, 'date2')
console.log(date3, 'date3')
史一试
目录
相关文章
天下无敌呀
|
2天前
|
存储 JavaScript 对象存储
js检测数据类型有那些方法
js检测数据类型有那些方法
天下无敌呀
114 59
花非花雾非雾11
|
4天前
|
JavaScript 前端开发
JavaScript Array map() 方法
JavaScript Array map() 方法
花非花雾非雾11
11 4
无所不能的蛋蛋
|
3天前
|
JavaScript 前端开发
JavaScript 中的新 Set 方法
JavaScript 中的新 Set 方法
无所不能的蛋蛋
9 1
无所不能的蛋蛋
|
4天前
|
存储 JavaScript
js切割截取字符串方法
js切割截取字符串方法
无所不能的蛋蛋
15 2
大树营养快线
|
4天前
|
JavaScript
JS数组合并的常用方法
JS数组合并的常用方法
大树营养快线
14 1
异步社区
|
前端开发 JavaScript 开发者
《编写可维护的JavaScript》——第 1 章 基本的格式化 1.1缩进层级
关于JavaScript编码风格,我们首先要讨论的是(几乎所有的语言都是如此)如何处理缩进。对这个话题是可以争论上好几个小时的,缩进甚至关系到软件工程师的价值观。在确定编程风格之初应当首先确定缩进格式,这非常重要,以免工程师后续会陷入那个老生常谈的打开文件时二话不说先重排代码缩进的问题之中。
异步社区
1554 0
异步社区
|
JavaScript 前端开发 开发者
《编写可维护的JavaScript》——第 1 章 基本的格式化1.1 缩进层级
异步社区
1434 0
wishCoding
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
wishCoding
70 2
wishCoding
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物援助平台附带文章源码部署视频讲解等
wishCoding
63 4
wishCoding
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的宠物交易平台附带文章源码部署视频讲解等
wishCoding
55 4

热门文章

最新文章

  • 1
    JavaScript基本数据类型分析
  • 2
    [译] 使用 Node.js 提供百万的活跃 WebSocket 连接
  • 3
    JS-underfined is not a function
  • 4
    读javascript高级程序设计14-错误处理与调试
  • 5
    VS实现JavaScript智能感知实践
  • 6
    《JavaScript和jQuery实战手册(原书第2版)》——3.5节教程:一个简单测验
  • 7
    如何添加360浏览器(chrome)添加JavaScript例外,禁止网站加载JS
  • 8
    Make your pages load faster by combining and compressing javascript and css files
  • 9
    【推荐】JS面象对象编程视频教程
  • 10
    你可能不知道的一些JavaScript 奇技淫巧
  • 1
    js 校验括号——括号不可嵌套且需成对出现
    32
  • 2
    js 区分中英文输入法(如中英文括号)
    43
  • 3
    js document.compatMode【详解】(含准确获取浏览器宽高等尺寸的方法)
    23
  • 4
    vue组件封装——固定宽高比的容器(2种方法:纯CSS实现 + JS实现)
    90
  • 5
    js 等待接口访问成功后执行指定代码【3种方法】(含async await Promise的使用)
    37
  • 6
    js函数封装 —— 金额添加千分位分隔符
    29
  • 7
    只会用插件可不行,这些前端动画技术同样值得收藏-JavaScript篇(下)
    34
  • 8
    JavaScript作用域详解
    28
  • 9
    JS案例:在浏览器实现自定义菜单
    24
  • 10
    只会用插件可不行,这些前端动画技术同样值得收藏-JavaScript篇(上)
    39
  • 相关课程

    更多
  • JavaScript入门与实战
  • JavaScript 自学手册文档教程
  • 相关电子书

    更多
  • JavaScript函数
  • Delivering Javascript to World
  • 编程语言如何演化-以JS的private为例
  • 相关实验场景

    更多
  • Html5和Webpack2:Webpack5打包JS和样式表
  • 下一篇
    搭建自己的私有云盘工具总结

    天下网标王冠县网站优化怎么样能源网站优化怎么做华安针织厂网站优化关键词有经验的网站优化排名仙居网站优化公司东营网站优化哪家便宜肇庆百度网站优化只有图片的网站做seo优化好的网站品牌优化价格优惠昌吉网站seo优化哪家好谷歌网站关键词优化工具廊坊放心的网站优化推广河南网站优化哪家靠谱优化网站板块设置达州网站建设和优化公司宁阳县网站优化排名网站优化比较好阿克苏网站系统优化网站运营维护的优化惠济区网站关键词优化公司济南网站优化平台河南seo网站优化负责网站优化维护项城网站优化哪家专业许昌网站优化报价纯静态网站加速优化悟空seo网站优化苏州网站优化排名网站福州福清网站优化推广江苏网站优化建设香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

    天下网标王 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化