簡體   English   中英

javascript年齡計算器不斷給出錯誤的數字,

[英]javascript age calculator keep giving wrong numbers,

我正在嘗試編寫一個javascript程序並計算使用年齡,我已經完成了以下代碼,

function submitForm() {
    var d = new Date();
    var year = d.getFullYear();
    var month = d.getMonth();
    var days = d.getDay();
    var minutes = d.getMinutes();
    var hours = d.getHours();
    var byear = document.dataform.year.selectedIndex;
    var bmonth = document.dataform.month.selectedIndex;
    var bday = document.dataform.day.selectedIndex;
    var bhours = bday * 24;
    var bmin = 60 * b hours;
    var dyears = year - byear;
    var dmonth = month - bmonth;
    var ddays = (days - bday);
    var dhours = hours - bhours;
    var dminutes = minutes - bmin;
    var daysTillBDay = 365 - bday;
    if (isLeapYear() == true) {
        dyears = year - byear;
        dmonth = month - bmonth;
        ddays = (days - bday) + 1;
        dhours = hours - bhours;
        dminutes = minutes - bmin;
        daysTillBDay = 365 - bday;
    }
    var el = document.getElementsByName('uyears');
    el[0].value = dyears + " years old.";
    el = document.getElementsByName('umonths');
    el[0].value = dmonth + " months old.";
    document.getElementsByName('udays')[0].value = ddays;
    document.getElementsByName('lmonths')[0].value = dmonth;
    document.getElementsByName('ldays')[0].value = ddays;
    document.getElementsByName('lhrs')[0].value = dhours;
    document.getElementsByName('lmin')[0].value = dminutes;
    document.getElementsByName('bdays')[0].value = daysTillBDay + " days left till your birthday.";
}

我想我會在嘗試運行該程序之前工作,在運行該程序之后,我發現該程序幾乎給了我所有錯誤,我的年份像2013年(最新年份),而我將等於如果輸入11,則為負數,例如-1。我只是嘗試查找用戶的年齡,我認為這是今天(今天的登機口)-(生日日期)的日期,但是現在不起作用,任何人都知道>>?

問題非常簡單(這是我自己犯的一個錯誤new Date().getDay()返回星期幾(星期一為0,星期日為6),而不是月份中的一天。

您要查找的函數是new Date().getDate() ,它在1月1日返回1,在聖誕節返回25,依此類推。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM