Heim  >  Artikel  >  Web-Frontend  >  JS berechnet automatisch die Kosten für die Hotelübernachtung

JS berechnet automatisch die Kosten für die Hotelübernachtung

php中世界最好的语言
php中世界最好的语言Original
2018-03-23 14:02:232764Durchsuche

In diesem Artikel werden hauptsächlich die relevanten Informationen von Javascript vorgestellt, um jeden Tag innerhalb eines Datumsbereichs unterschiedliche Preise zu erhalten (die Berechnung des Gesamtpreises für den Aufenthalt kann auf

Codebeispiel

Ich habe kürzlich ein kleines Programmprojekt für ein Hotel entwickelt und bin auf ein solches Problem gestoßen.

Hotelzimmerpreise

schwanken und die Preise schwanken täglich, zu jeder Tageszeit oder an einem besonderen Datum. Wenn der Benutzer ein Haus für die nächsten fünf Tage auswählt und die Preise für diese fünf Tage unterschiedlich sind und es besondere Tage gibt, wie berechnet man dann den Gesamtpreis für die fünf Tage?

Das folgende Beispiel listet alle Daten in diesem Datumsbereich basierend auf dem Check-in-Datum und dem Check-out-Datum auf:

Sie werden diese Funktion an mehreren Stellen verwenden, also zum Einkapseln: Erstellen Eine separate JS-Datei

function Thedatefor(times,objroom){ // 日期段 objroom房间价格表,有星期和特殊日期
 var dateObj = []
 var feeroom = [] // 计算后总价格表
 var str = times[0].split("-") // 入住日期
 var end = times[1].split("-") //离店日期
 var strs = new Date();
 strs.setUTCFullYear(str[0], str[1] - 1, str[2]); //设置年份
 var ends = new Date();
 ends.setUTCFullYear(end[0], end[1] - 1, end[2]); //设置年份
 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() //这里可以转换成星期几的
 for (var h = 0; h < (objroom.length - 1);h++){ 
  if (parseInt(timedate[0] + timedate[1] + timedate[2]) == objroom[h].match){ // 对比特殊日
  feeroom.push({ fee: objroom[h].fee, date: dateObj[b]})
  }//根据星期几和特殊日期来获取每天的价格
  if (getDays == objroom[h].match) { //对比星期
  feeroom.push({ fee: objroom[h].fee, date: dateObj[b] })
  }
 }
 }
 return feeroom //最后列出每天的价格,和日期返回
}
times ist das Check-in-Datums- und Check-out-Datumsformat: „[2018-01-20,2018-01-26]“, objroom ist eine tägliche Preisliste für dieses Zimmer für die kommende Woche.

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie auf der chinesischen PHP-Website

Andere verwandte Artikel!

Empfohlene Lektüre:

Detaillierte Erklärung von Bildern und Texten mithilfe der Render-Methode

Das Applet verwendet .getImageInfo(), um Bildinformationen abzurufen

Das obige ist der detaillierte Inhalt vonJS berechnet automatisch die Kosten für die Hotelübernachtung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn