手机版

javascript实现在一个日期周期内每天获得不同的价格(计算总入住价格)

时间:2021-09-01 来源:互联网 编辑:宝哥软件园 浏览:

代码示例

最近在酒店小程序项目开发中遇到这样的问题。

酒店的房价是浮动的,不同于每天每个小时或者某个特殊日期的房价。如果用户选择了未来五天的房源,而这五天的价格刚好不一样,那我们怎么计算五天周期的总价呢?

以下示例根据入住日期和退房日期列出了此期间的所有日期:

您将在几个地方使用这个函数,所以您应该打包它:单独创建一个js文件

函数日期为(times,obj room){//obj room的价目表在日期期间,有周和特殊日期var dateObj=[] var feeroom=[] //计算后的总价目表var str=times[0]。拆分('-') //签到日期var end=times[1]。拆分('-') //出发日期var strs=新日期();strs.setUTCFullYear(str[0],str[1] - 1,str[2]);//设置年var ends=new Date();ends.setUTCFullYear(end[0],end[1] - 1,end[2]);//设置year var strdate=strs . gettime();//ms var end date=ends . GetTime();//ms for(var b=str date;b=结束日期;){//遍历所有日期段datobj . push((new date(par sent(b))。格式()。tostring());b=b 24 * 60 * 60 * 1000} for(var b=0;b dateObj.lengthB ){ //dateObj得到了所有的日期var timedate=dateallarr [b]。split('-')var getdays=new date(date obj[b])。getday ()==0?7 :新日期(dateobj [b])。getday()//对于(var h=0;h(obj room . length-1);h){ if(par sent(time date[0]time date[1]time date[2])==obj room[h]。match){//比较特殊日子fee room . push({ fee : obj room[h])。费,Date: dateObj[b]}) }//根据一周中的某一天和特殊日期获取每日价格如果(getdays==objroom [h]。match){//比较周feeroom。push ({fee3360 objroom [h])。费,Date : date obj [b]})}}返回房间//在末尾列出每日价格,并返回日期}次传入的入住日期和退房日期的格式为:'[2018-01-20,2018-01-26]',obj房间为该房间未来一周的每日价目表。

摘要

上面是边肖介绍的javascript实现,在一个日期周期内每天获得不同的价格(计算总入住价格)。希望对大家有帮助。如果你有任何问题,请给我留言,边肖会及时回复你。非常感谢您对我们网站的支持!

版权声明:javascript实现在一个日期周期内每天获得不同的价格(计算总入住价格)是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。