>웹 프론트엔드 >JS 튜토리얼 >JS는 호텔 숙박 비용을 자동으로 계산합니다.

JS는 호텔 숙박 비용을 자동으로 계산합니다.

php中世界最好的语言
php中世界最好的语言원래의
2018-03-23 14:02:232833검색

이 글에서는 날짜 범위 내에서 하루에 다른 가격을 얻기 위해 관련 정보를 구현하는 javascript(총 숙박 가격 계산)를 주로 소개합니다. 필요한 친구는

코드 예제를 참조하세요.

최근 호텔을 위한 소규모 프로그램 프로젝트를 개발할 때 이런 문제에 직면했습니다.

호텔 객실 가격은 변동이며 가격은 매일, 시간 또는 특정 날짜에 따라 다릅니다. 사용자가 다음 5일 동안 집을 선택했는데 이 5일 동안 가격이 달라지고 특별한 날이 있는 경우 5일 동안의 총 가격을 어떻게 계산합니까?

다음 예에서는 체크인 날짜와 체크아웃 날짜를 기준으로 이 날짜 범위의 모든 날짜를 나열합니다.

이 기능은 여러 곳에서 사용되므로 캡슐화해야 합니다. 별도의 js를 만듭니다. 파일

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는 '[2018-01-20, 2018-01-26]' 형식으로 체크인 날짜와 체크아웃 날짜를 전달하며, objroom은 다음 주 이 객실의 일일 가격표입니다. .

이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트기타 관련 기사를 주목하세요!

추천 도서:

렌더링 메소드를 사용한 이미지와 텍스트에 대한 자세한 설명

애플릿은 이미지 정보를 얻기 위해 .getImageInfo()를 사용합니다

위 내용은 JS는 호텔 숙박 비용을 자동으로 계산합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.