javascript實(shí)現(xiàn)獲取一個(gè)日期段內(nèi)每天不同的價(jià)格(計(jì)算入住總價(jià)格)
代碼例子
最近在做酒店的小程序項(xiàng)目開(kāi)發(fā),遇到一個(gè)這樣的問(wèn)題。
酒店的房間價(jià)格是浮動(dòng)的,每天每時(shí)或某個(gè)特殊的日期價(jià)格等都是浮動(dòng)的不一樣。如果用戶選擇了未來(lái)5天的住房的話,而這5天剛好價(jià)格還都不一樣還有特殊日的價(jià)格,如何計(jì)算出一個(gè)5天的總價(jià)格呢?
下面的例子是根據(jù)入住的日期,和離店的日期來(lái)列出這一個(gè)日期段內(nèi)的所有日期:
這個(gè)功能你會(huì)有幾個(gè)地方用到,所以要封裝下:?jiǎn)为?dú)建一個(gè)js文件
function Thedatefor(times,objroom){ // 日期段 objroom房間價(jià)格表,有星期和特殊日期
var dateObj = []
var feeroom = [] // 計(jì)算后總價(jià)格表
var str = times[0].split("-") // 入住日期
var end = times[1].split("-") //離店日期
var strs = new Date();
strs.setUTCFullYear(str[0], str[1] - 1, str[2]); //設(shè)置年份
var ends = new Date();
ends.setUTCFullYear(end[0], end[1] - 1, end[2]); //設(shè)置年份
var strdate = strs.getTime(); //毫秒
var enddate = ends.getTime(); // 毫秒
for (var b = strdate; b <= enddate;) { // 遍歷出所有日期段
dateObj.push((new Date(parseInt(b))).format().toString());
b = b + 24 * 60 * 60 * 1000;
}
for (var b = 0; b < dateObj.length;b++){ //dateObj拿到的所有日期
var timedate = dateAllArr[b].split("-")
var getDays = new Date(dateObj[b]).getDay() == 0 ? 7 : new
Date(dateObj[b]).getDay() //這里可以轉(zhuǎn)換成星期幾的
for (var h = 0; h < (objroom.length - 1);h++){
if (parseInt(timedate[0] + timedate[1] + timedate[2]) == objroom[h].match){ // 對(duì)比特殊日
feeroom.push({ fee: objroom[h].fee, date: dateObj[b]})
}//根據(jù)星期幾和特殊日期來(lái)獲取每天的價(jià)格
if (getDays == objroom[h].match) { //對(duì)比星期
feeroom.push({ fee: objroom[h].fee, date: dateObj[b] })
}
}
}
return feeroom //最后列出每天的價(jià)格,和日期返回
}
times傳入的是入住日期和離店日期格式為:‘[2018-01-20,2018-01-26]',objroom是一個(gè)未來(lái)一個(gè)星期的這個(gè)房間的每天價(jià)格表。
總結(jié)
以上所述是小編給大家介紹的javascript實(shí)現(xiàn)獲取一個(gè)日期段內(nèi)每天不同的價(jià)格(計(jì)算入住總價(jià)格),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
JavaScript圖片上傳并預(yù)覽的完整實(shí)例
上傳是個(gè)老生常談的話題了,多數(shù)情況下各位想必用的是uplodify,webUploader之類的插件,這篇文章主要給大家介紹了關(guān)于JavaScript圖片上傳并預(yù)覽的相關(guān)資料,需要的朋友可以參考下2022-01-01
在小程序中集成redux/immutable/thunk第三方庫(kù)的方法
這篇文章主要介紹了在小程序中集成redux/immutable/thunk第三方庫(kù)的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08
js實(shí)現(xiàn)仿購(gòu)物車(chē)加減效果
本文主要介紹了js實(shí)現(xiàn)仿購(gòu)物車(chē)+ -效果的實(shí)例,具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-03-03

