如何在JavaScript中使用dd/mm/yyyy格式计算年龄?

如何在JavaScript中使用dd/mm/yyyy格式计算年龄?,javascript,html,Javascript,Html,如何以dd/mm/yyyy格式获取用户输入并使用它计算用户的年龄 function userAge() { var todayDate = new Date().getMilliseconds; var birthDateSplit = document.getElementById("birthDate").split('/'); var birthDate = new Date(birthDateSplit[2],birthDateSplit[1],birthDateSplit[

如何以dd/mm/yyyy格式获取用户输入并使用它计算用户的年龄

function userAge() {
  var todayDate = new Date().getMilliseconds;
  var birthDateSplit = document.getElementById("birthDate").split('/');
  var birthDate = new Date(birthDateSplit[2],birthDateSplit[1],birthDateSplit[0]);
  var day = birthDate[2]*86400000;
  var month = birthDate[1]*2629746000;
  var year = birthDate[0]*31556952000;
  var age = today - (day + month + year);

  return age;
}

我们可以通过两种方式解决这个问题:

  • 如果不想使用插件,可以使用
  • 从字段中获取值,并将其表示为日期

    var birthDayDate = document.getElementById("birthDate").value;
    var from = birthDayDate.split("/");
    var birthdateTimeStamp = new Date(from[2], from[1] - 1, from[0]);
    
    代码示例:

    var from=“15/09/1994”。拆分(“/”);
    var birthdateTimeStamp=新日期(从[2],从[1]-1,从[0]);
    var cur=新日期();
    var diff=cur-birthdateTimeStamp;
    //这是以毫秒为单位的差异
    var currentAge=数学地板(差值/31557600000);
    //除以1000*60*60*24*365.25
    
    console.log(currentAge)
    构造函数将处理对用户输入的解析。然后可以使用
    getTime()
    获取毫秒时间

    function userAge() {
      var todayDate = new Date().getTime();
      var birthDate = new Date(document.getElementById("birthDate")).getTime();
      var age = (todayDate - birthDate) / (1000 * 60 * 60 * 24 * 365)
    
      return age;
    }
    

    年龄为当前年份-yyyy

    如果mm>当前月,则为-1
    或者mm==当前月份和dd>当前日期。

    今天的
    是什么
    ?你可能是男性
    。getElementById(“生日”).value.split(…)
    看看开发工具。。。。它会告诉你为什么它什么也不返回。有错误。学习调试。@TheZero and One问题是上面的代码不起作用,因为您有错误。开发人员控制台应该告诉您错误。在浏览器中打开开发人员控制台并查看错误消息。(是的,你这样做是有缺陷的)@zeroandone啊,我明白了,很抱歉逗号把我弄丢了:)@zeroandone,done,添加了javascript日期解决方案。