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中日期的加减运算。多简单啊!去试试!
以上是本文的全部内容。我希望你能喜欢它。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。