老师帮检查下,效果好像实现了,但是没有按照题目要求来做。

来源:5-10 编程练习

Tammyy

2018-11-02 01:12:39

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

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

</head>

<body>

<script>

    var year=prompt('请输入员工的入职年份');

    var month=prompt('请输入员工的入职月份');

    var date=prompt('请输入员工的入职时间');

    var arr=[year,month,date];

    var time='';

    for(i=0;i<3;i++){

        time+=arr[i]

    }

    var a=parseInt(arr[0]);

    var temp=new Date(a+3,arr[1],arr[2]);

    document.write('该员工入职时间是:'+arr[0]+'-'+arr[1]+'-'+arr[2]+'<br/>');

    document.write('该员工合同到期时间是:'+temp.getFullYear()+'-'+arr[1]+'-'+arr[2]);

    

</script>

</body>

</html>


写回答

2回答

妮可妮可妮_

2018-11-02

http://img.mukewang.com/climg/5bdbf2f400014bd008660626.jpg

同学如果想要通过arr[0]+3实现效果可以参考上图所示代码,先将arr[0]减去一隐式转换为数值类型,就可以在输出的时候加上三,再加上减去的1

代码是灵活不唯一的,实现效果的代码也不是唯一的

祝学习愉快!

0

妮可妮可妮_

2018-11-02

你好同学

测试了你的代码,根据习题要求,合同有效期为3年,当我输入1994年12月1号的时候出现了下图所示情况:

http://img.mukewang.com/climg/5bdbba25000177cc05160167.jpg

http://img.mukewang.com/climg/5bdbbabf0001ec2203350139.jpg

getMonth返回值是 0到 11之间的一个整数。所以需要先减去1,再输出的时候加上一,可参考下图所示

http://img.mukewang.com/climg/5bdbbf2c0001935008240623.jpg

祝学习愉快!

0
hammyy
h 为什么可以直接写(arr[1]+1),而不能写(arr[0]+3)?
h018-11-02
共1条回复

0 学习 · 36712 问题

查看课程

相似问题