js如何通过末次月经日期计算预产日期
生活随笔
收集整理的這篇文章主要介紹了
js如何通过末次月经日期计算预产日期
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
計算方式有兩種
1)直接添加280天
2)添加10月8天(參數傳遞,可用改成9月7天等)
js中引入文件
<script src="js/jquery.min.js"></script>
html添加標簽
末次月經日期: <input type="date" id="MenstrualDate" onchange="MenstruDateChange()" /> <br/> 預產日期1: <input type="date" id="ProductDate1"/> <br/> 預產日期2: <input type="date" id="ProductDate2"/> <br/>
js添加方法
//預產日期改變事件
var MenstruDateChange = function ()
{
//獲取末次月經日期
var menstruDate = $('#MenstrualDate').val();
//計算預產日期(方法一)
var productDate1 = addDate1(menstruDate,280);
//計算預產日期(方法二)
var productDate2 = addDate2(menstruDate, 10, 8);
//設置預產日期
$('#ProductDate1').val(productDate1);
$('#ProductDate2').val(productDate2);
}
///計算預產日期(方法一)
//參數1:要轉化日期
//參數2:要添加的天數
//注:(減去多少天,直接傳遞負數值)
function addDate1(date, days)
{
//轉化為日期對象
var d = new Date(date);
//設置日期(原有日期+增加的天數)
d.setDate(d.getDate() + days);
//獲取計算后日期的年份
var year = d.getFullYear();
//獲取計算后日期的月份
var month = d.getMonth() + 1;
//獲取計算后日期的天數(多少號)
var day = d.getDate();
//拼接成日期格式
var dateStr = year + '-' + getFormatDate(month) + '-' + getFormatDate(day);
return dateStr;
}
//計算預產日期(方法二)
//參數1:要轉化的日期
//參數2:增加的月份
//參數3:增加的天數
function addDate2(date, months, days) {
//轉化為日期對象
var d = new Date(date);
//設置日期(原有月份+增加的月份)
d.setMonth(d.getMonth() + months);
//設置日期(原有日期+增加的天數)
d.setDate(d.getDate() + days);
//獲取計算后日期的年份
var year = d.getFullYear();
//獲取計算后日期的月份
var month = d.getMonth() + 1;
//獲取計算后日期的天數(多少號)
var day = d.getDate();
//拼接成日期格式
var dateStr = year + '-' + getFormatDate(month) + '-' + getFormatDate(day);
return dateStr;
}
//格式化日期的月份或天數的顯示(小于10,在前面增加0)
function getFormatDate(value) {
if (value == undefined || value == "") {
return '';
}
var str = value;
if (parseInt(value) < 10) {
str = '0' + value;
}
return str;
}
顯示效果圖:
總結
以上是生活随笔為你收集整理的js如何通过末次月经日期计算预产日期的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 亚马逊EC2服务器登录方法
- 下一篇: LINUX 设置 backspace为删