js根据开始时间和结束时间计算月份差

注:不满一个月按照一个月处理

//租赁开始日期
const ext_order_Form_RentalDatefrom__c = new xsyrpa.FormDatePickerExtensionPoint("order.Form#*#RentalDatefrom__c");
//租赁截止日期
const ext_order_Form_RentalDateto__c = new xsyrpa.FormDatePickerExtensionPoint("order.Form#*#RentalDateto__c");
//租期
const ext_order_Form_RentalPeriod__c = new xsyrpa.FormNumberInputExtensionPoint("order.Form#*#RentalPeriod__c");


        //开始日期,发生变化时
        ext_order_Form_RentalDatefrom__c.on("onChange", (time1) => {
            let a = ext_order_Form_RentalDateto__c.getValue().then((time2)=>{
                if(time2 != null){
                //设置值
                const dateOne = new Date(time1);
                dateOne;
                const dateTwo = new Date(time2);
                // 第一个日期的年和月、日
                const dayOne = dateOne.getDate();
                const yearOne = dateOne.getFullYear();
                const monthOne = dateOne.getMonth() + 1 + n;
                // 第二个日期的年和月、日
                const dayTwo = dateTwo.getDate();
                const yearTwo = dateTwo.getFullYear();
                const monthTwo = dateTwo.getMonth() + 1;
                // 两个日期的月份数
                const oneMonthNum = yearOne * 12 + monthOne;
                const twoMonthNum = yearTwo * 12 + monthTwo;
                //let s = Math.ceil((time2-time1)/1000/60/60/24/30);
                let m = 0;
                if(dayTwo > dayOne){
                    m = m+1;
                }
                ext_order_Form_RentalPeriod__c.setValue(Math.abs(twoMonthNum - oneMonthNum)+m);
                }
            });
        });
//截止日期,发生变化时
        ext_order_Form_RentalDateto__c.on("onChange", (time2) => {
            let a = ext_order_Form_RentalDatefrom__c.getValue().then((time1)=>{
                if(time1 != null){
                //设置值
                const dateOne = new Date(time1);
                const dateTwo = new Date(time2);
                // 第一个日期的年和月、日
                const dayOne = dateOne.getDate();
                const yearOne = dateOne.getFullYear();
                const monthOne = dateOne.getMonth() + 1;
                // 第二个日期的年和月、日
                const dayTwo = dateTwo.getDate();
                const yearTwo = dateTwo.getFullYear();
                const monthTwo = dateTwo.getMonth() + 1;
                // 两个日期的月份数
                const oneMonthNum = yearOne * 12 + monthOne;
                const twoMonthNum = yearTwo * 12 + monthTwo;
                //let s = Math.ceil((time2-time1)/1000/60/60/24/30);
                let m = 0;
                if(dayTwo > dayOne){
                    m = m+1;
                }
                ext_order_Form_RentalPeriod__c.setValue(Math.abs(twoMonthNum - oneMonthNum)+m);
                }
            });
        });

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

主业烤冷面

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值