JS处理日期计算(按照年月日进行增减运算)

本分只简单实现了增加 月份 和 天数 的功能,减法功能暂时没做,读者可以自己简单实现。

年份的计算更简单,只需要看增减后是否为闰年,如果是闰年的话看看月份是否为二月,如果为二月的话看看日期是否为合理并相应地调整即可。

天数的加减我看了网上的大部分方法都不是很完美,考虑的都比较少,我暂时只用到了增加天数的部分,就只写了增加天数,这个版本减少天数会出现意想不到的结果,如有需要请评论。

为了方便我为String类型变量增加了endWith方法用来判断字符串结尾字符(M代表增减月份,Y代表增减年份,D代表增减天数)。

// 为String类型变量增加endWith方法用于判断字符串的结尾
String.prototype.endWith=function(endStr){
    var d=this.length-endStr.length;
    return (d>=0&&this.lastIndexOf(endStr)==d)
}
// 小于10的数字前加0
function formatSmallNum (num) {
    var newnum = parseInt(num);
    if (newnum<10) {		// 调整日小于10时的格式
        newnum = 0 + '' + newnum;
    }
    return newnum
}
var monthbs = [1,0,1,0,1,0,1,1,0,1,0,1]		// 定义月份的大小
// 处理加减月时,当日大于28时,将新的日在新的月份中合理化
function adjustNewDay (newyear, newmonth, newday) {
    var newAdjustedDay = newday;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值