首页 > 其他分享 >js格式化日期 js加减日期 js时间运算

js格式化日期 js加减日期 js时间运算

时间:2023-03-01 12:32:37浏览次数:31  
标签:格式化 format Object js 日期 num 时间 Date


js格式化日期

/**
* 给Date的原型添加格式化时间的方法
* @param {Object} format 要格式化的类型
* @param {Object} daynum 要加减的时间的天数,加时间填正整数,减时间填负整数
* @memberOf {TypeName}
* @return {TypeName} 格式化以后的时间
*/
Date.prototype.format = function(format,daynum) {
/*
* eg:format="YYYY-MM-dd hh:mm:ss";
*/
if(daynum){
this.setDate(this.getDate()+daynum);
}
var o = {

"M+" : this.getMonth() + 1, // month
"d+" : this.getDate(), // day
"h+" : this.getHours(), // hour
"m+" : this.getMinutes(), // minute
"s+" : this.getSeconds(), // second
"q+" : Math.floor((this.getMonth() + 3) / 3), // quarter
"S" : this.getMilliseconds() // millisecond
}

if (/(Y+)/.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear() + "")
.substr(4 - (RegExp.$1).length));
}

for ( var k in o) {
if (new RegExp("(" + k + ")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k]
: ("00" + o[k]).substr(("" + o[k]).length));
}
}
return format;
}
//test
document.write(new Date().format("YYYY-MM-dd"));

js加减天数,月,年,周

/**
* 给Date的原型添加天数运算的方法
* @param {Object} num 要加减的时间的数量,加时间填正整数,减时间填负整数
*/
Date.prototype.opDays = function(num)
{
this.setDate(this.getDate() + num);
return this;
};
/**
* 给Date的原型添加周运算的方法
* @param {Object} num 要加减的时间的数量,加时间填正整数,减时间填负整数
*/
Date.prototype.opWeeks = function(num)
{
this.opDays(num * 7);
return this;
};
/**
* 给Date的原型添加月运算的方法
* @param {Object} num 要加减的时间的数量,加时间填正整数,减时间填负整数
*/
Date.prototype.opMonths= function(num)
{
var d = this.getDate();
this.setMonth(this.getMonth() + num);
return this;
};
/**
* 给Date的原型添加年运算的方法
* @param {Object} num 要加减的时间的数量,加时间填正整数,减时间填负整数
*/
Date.prototype.opYears = function(num)
{
var m = this.getMonth();
this.setFullYear(this.getFullYear() +num);
return this;
}
document.write(new Date().format("YYYY-MM-dd")+"</br>");//当前日期减去7天,并格式化
document.write(new Date().opWeeks(-1).format("YYYY-MM-dd")+"</br>");//当前日期减去一周,并格式化
document.write(new Date().opMonths(5).format("YYYY-MM-dd")+"</br>");//当前日期减去5月,并格式化
document.write(new Date().opYears(-1).format("YYYY-MM-dd")+"</br>");//当前日期减去一年,并格式化



标签:格式化,format,Object,js,日期,num,时间,Date
From: https://blog.51cto.com/yxkong/6093427

相关文章

  • js如何快速找到是哪个元素产生滚动条的?
     把以下代码复制粘贴到浏览器Console面板,敲一下回车。然后滚动滚动条就可以看到打印:functionfindscroller(element){element.onscroll=function(){......
  • js-- 数组中取最大值的三种写法
    js数组取最大值方法有哪些Math.max()letarr=[3,1,2,4,6,0,19];console.log(Math.max(...arr))//19functionmathGetMax(arr){returnMath.max.apply(null......
  • nuxt3新项目tsconfig.json报错:找不到“node”的类型定义文件
    tsconfig.json中的报错信息报错分析项目根目录的tsconfig.json文件完全引用.nuxt文件夹中的配置"extends":"./.nuxt/tsconfig.json",所以根据路径配置文件查看报......
  • mysql中使用 when then 格式化查询结果
    mysql>select*fromuser;+----+------+------+|id|name|sex|+----+------+------+|1|张三|1||2|李四|1||3|张珊|0|+----......
  • S07-01 JS高级
    JS高级Symbolsymbol是一种基本数据类型。语法Symbol(description?)参数description:string,对symbol的描述,可用于调试但不是访问symbol本身示例//1.通......
  • HTML页面自动清理js、css文件的缓存(自动添加版本号)
    在web项目开发过程中,我们经常会引用css、js文件,更新文件后常出现缓存问题(明明更改了代码,在浏览器上访问的时候却没有发生变化),这种情况我们通常采用以下两种解决方案:1、手......
  • 【算法设计-模拟】日期问题
    目录1.几月几号是一年中的第几天?2.一年中的第几天是几月几号?3.给定日期,求加上x天后的日期4.两个日期相差了多少天?5.给定一个日期的星期,求另一个日期是星期几1.几月......
  • datetime时间格式化中间为什么有个T
    如时间为:2020-01-12T15:17:21国际标准化组织的国际标准ISO8601是日期和时间的表示方法,全称为《数据存储和交换形式·信息交换·日期和时间的表示方法》原文如下:日期和......
  • Python 中 response.json 和 json.loads 的区别
    很多时候在python中请求API我都是一会儿用response.json,一会儿用json.loads,但是这两个函数的区别我貌似一直没太搞明白,所以趁着这次就把他们解决掉。问题分析reson......
  • 常用API&日期类
    1,常用APIString类型每次操作新的对象,而StringBuilder是在原有的基础基础进行修改,所以如果对于不常修改的变量可以设为String类型,而假如是易修改的数据尽量使用StringBuild......