Java脚本语言实现日期加减计算功能代码实例,因为在射流研究…中没有类似C#中的添加天数方法,所以要想实现日期加减的话,就需要自己写函数来实现。
今天就算对射流研究…中日期的加减法做个总结,一共两步
第一步,引入date.format.js,这个射流研究…的作用是将日期转为指定的格式,代码如下
var dateFormat=function () {
var token=/d{1,4}|m{1,4}|yy(?yy)?|([HhMsTt])1?|[LloSZ]|[^]*|[^]*/g,
时区=/b(?[PMCEA][SDP]T|(?太平洋|山地|中部|东部|大西洋)(?标准|日光|通行)时间|(?GMT|UTC)(?[- ]d{4})?)b/g,
时区剪辑=/[^- dA-Z]/g,
pad=function (val,len) {
val=String(val);
len=len | | 2;
而(val。length len)val= 0 val;
返回英国压力单位
};
//正则表达式和支持函数通过闭包进行缓存
返回函数(日期、掩码、utc) {
var dF=日期格式
//如果跳过其他参数,则不能提供utc(使用" UTC:"掩码前缀)
if(参数。长度==1对象。原型。托斯特林。通话(日期)==[对象字符串]!/d/.测试(日期)){
掩码=日期;
日期=未定义;
}
//通过日期传递日期应用Date.parse,如有必要
日期=日期?新日期(日期):新日期;
if (isNaN(date))抛出语法错误(无效日期);
mask=String(df。口罩[口罩]| |口罩| | df。masks[ default ]);
//允许通过掩码设置美国联合技术公司参数
if (mask.slice(0,4)= UTC:){
面具=面具。切片(4);
utc=true
}
var _=utc? getUTC : get ,
d=日期[_ 日期](),
D=日期[_ 天](),
m=日期[_ 月](),
y=日期[_ 整年](),
H=日期[_ 小时](),
M=日期[_ 分钟](),
s=日期[_ 秒](),
L=日期[_ 毫秒](),
o=utc?0 : date.getTimezoneOffset(),
标志={
d: d,
dd: pad(d),
ddd: dF.i18n.dayNames[D],
dddd: dF.i18n.dayNames[D 7],
男:m 1,
毫米:垫(米1),
mmm: dF.i18n.monthNames[m],
mmmm: dF.i18n.monthNames[m 12],
yy:字符串(y).切片(2),
yyyy: y,
h: H % 12 || 12,
hh: pad(H % 12 || 12),
H: H,
HH: pad(H),
男:男,
毫米:垫(米),
s: s,
不锈钢:衬垫,
l: pad(L,3),
L: pad(L 99?数学回合(L/10) : L),
t: H 12?a : p ,
tt: H 12?am : pm ,
T: H 12?A : P ,
TT: H 12?AM : PM ,
Z: utc? UTC :(字符串(日期)。匹配(时区)|| [])。pop().替换(时区剪辑,),
o: (o 0?-: )pad(数学。地板(数学。ABS(o)/60)* 100数学。ABS(o)% 60,4),
S: [th , st , nd , rd][d % 10 3?0 : (d % 100 - d % 10!=10) * d % 10]
};
return mask.replace(token,function $ 0){
在标志中返回$0?标志[$0] : $0.slice(1,$0。长度-1);
});
};
}();
//一些常见的格式字符串
dateFormat.masks={
默认: ddd mmm dd yyyy HH:MM:ss ,
短日期:"月/日/年",
中间日期:"年月日",
longDate: mmmm d,yyyy ,
完整日期:年,月,日,
短时间:“h:MM TT”,
中间时间:“h:MM:ss TT”,
长期:“h:MM:ss TT Z”,
isoDate: yyyy-mm-dd ,
isoTime:"时:分:秒",
iso日期时间:“yyyy-MM-DD t”hh:MM:ss,
iso UTC日期时间: UTC:yyyy-MM-DD t hh:MM:ss z
};
//国际化字符串
dateFormat.i18n={
日名:[
"太阳","星期一","星期二","星期三","星期四”,“Fri”星期六",
星期日、星期一、星期二、星期三、星期四、星期五、星期六
],
monthNames: [
一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月,
一月、二月、三月、四月、五月、六月、七月、八月、九月、十月、十一月、十二月
]
};
//为了方便起见.
date . prototype . format=function(mask,utc) {
返回日期格式(this,mask,utc);
};
第二步,把时间转换成毫秒进行加减,然后用上面的js转换成指定的日期。
var now Date=new Date();
//加法运算
var ysDate=新日期(now Date . gettime()-30 * 24 * 60 * 60 * 1000)。格式( yyyy-mm-DD );
//减法运算
var yeDate=新日期(now Date . gettime()-24 * 60 * 60 * 1000)。格式( yyyy-m-d );
通过以上两步,实现了JS中日期的加减运算。多简单啊!去试试!
以上是本文的全部内容。我希望你能喜欢它。