根据用户在Javascript中的输入设置Date()对象的正确方法是什么

what is the correct way to set a Date() object based on user input in Javascript

本文关键字:对象 是什么 方法 Date 设置 用户 Javascript 输入      更新时间:2023-09-26

我正在制作一个年龄验证模式,我有点卡住了。

在第4-7行中,我创建了一个javascript日期对象,并尝试用月份、日期和年份填充它,但很明显,第5-7行中的每一行都覆盖了前一行。

$('#tier3').change(function(){
    var tier1 = $('#tier1').find(":selected").text();
     var tier2 = $('#tier2').find(":selected").text();
     var tier3 = $('#tier3').find(":selected").text();
     var userDOB = new Date();
     userDOB.setMonth(tier1);
     userDOB.setDate(tier2);
     userDOB.setFullYear(tier3);
     var now = Date.now();
     userAge = now - userDOB;
     if( userAge >= 588591547188){
        set_popup_cookie();
        popup_wrapper.style.visibility="hidden";
     }else {
        /*  window.location = "http://www.smokefree.gov/"; */
     }
});

我还试着用代替4-7行

var userDOB = Date.parse(tier . " " . tier2 . ", " . tier3 );

但是我得到了一个语法错误

您可以使用Date构造函数new Date(year, month, day [, hour, minute, second, millisecond]);

如下

var userDOB = new Date(tier3, tier2, tier1);
var now = Date.now();
userAge = now - userDOB;
 if( userAge >= 588591547188){
    set_popup_cookie();
    popup_wrapper.style.visibility="hidden";
 }else {
    /*  window.location = "http://www.smokefree.gov/"; */
 }

在计算年龄之前检查tier3, tier2, tier1是否具有预期值

相关文章: