为什么这个在调试的时候会弹出两次输入框?

为什么这个在调试的时候会弹出两次输入框?

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>员工合同到期时间</title>

</head>

<body>

<script>

    var userYear=prompt("请输入员工入职年份");

var userMonth=prompt("请输入员工入职月份");

var userDay=prompt("请输入员工入职日期");

  function expDate(year,month,day){

  date=new Date(year,month,day);

  return "该员工入职的时间是:"+year+"-"+month+"-"+day+"<br/>"+"该员工合同到期时间是:"+(date.getFullYear()+3)+"-"+date.getMonth()+"-"+date.getDate();

  }

document.write(expDate(userYear,userMonth,userDay));

</script>

</body>

</html>

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

经测试是会弹出三次输入框的,不知道同学是在什么情况下弹出了两次输入框,可以说清楚一些。

如果输入的日期为2018-12-31,结果为:

http://img1.sycdn.imooc.com//climg/5bf4c2910001885302940063.jpg

出现了0月,这显然是不对的。

因为月份是的计算是0-11,所以会出现这种情况,建议在计算的时候先把月份减少一个月,输出的时候再加上一个月,参考:

http://img1.sycdn.imooc.com//climg/5bf4c30f0001df8115210244.jpg

自己完善测试下,祝学习愉快!

  • 此处留白 提问者 #1
    可能是我没描述清楚,我说的弹出两次是三个弹框都弹了两次,年月日都两次
    2018-11-21 10:32:13
  • 好帮手慕星星 回复 提问者 此处留白 #2
    是在控制台中打断点调试的吗,可能是开始打开页面的时候弹出了一次,然后调试的时候重新开始执行又弹出了一次。同学可以再调试下,开始调试之后是没有出现两次的情况的。
    2018-11-21 11:16:31
  • 此处留白 提问者 回复 好帮手慕星星 #3
    我在作业提交时会出现两次,在本地不会了,谢谢指点!
    2018-11-21 19:23:13
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师