首页 > 解决方案 > 如何仅使用 JavaScript 将提示中的输入添加到本地时间?

问题描述

我是 JavaScript 简介课程的软件工程专业学生,但我被困在一项作业中。这是任务,

在名为 alarmTime.html 的文件中,使用 prompt() 找出用户希望小睡多长时间。然后,在文档中写一个声明,告诉用户她/他的警报应该在什么时间响起。确保时间对用户来说是本地时间。

我坚持将输入添加到用户的当地时间。我真的不知道自己做错了什么,而且我很难理解该怎么做,因为我得到的只是似乎是随机数。请查看我的代码并指出正确的方向。

    var howLong = prompt("How long, in hours, do you want to nap for?", 1);
    var parsedInput = parseFloat(howLong);

    var today = new Date();
    var currentTime = today.toLocaleTimeString();
    var myHour = today.getHours(currentTime);

    var alarm = today.setHours(myHour + parsedInput); 


    document.write(alarm);

标签: javascriptdatedatetimetime

解决方案


原因就是因为这个说法document.write(alarm);setHoursDate 对象中的方法更新 Date 实例,并以毫秒为单位返回 Date。因此,您将 Date 对象打印为自 1970 年 1 月 1 日以来的毫秒数。要解决此问题,只需将其替换为document.write(today);


推荐阅读