作业懵了啊,我哪里错了?输出的数很迷

作业懵了啊,我哪里错了?输出的数很迷

<script>

var y=prompt("请输入你的出生年份"),m=prompt("请输入你的出生月份"),d=prompt("请输入你的出生日期");

var sum=0;

function data(one,two,three,four,five,six,seven,eight,nine,ten,eleven,twlve){

for(var i=0;i<m-2;i++){

sum=sum+arguments[i]

}

if((y % 400 == 0 || (y % 4 == 0 && y % 100 != 0)) && m > 2){

return sum=sum+d+1

}

else{

sum=sum+d;

}

alert(data(31,28,31,30,31,30,31,31,30,31,30,31))

   </script>


正在回答

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

2回答

你好同学 ,因为代码中return是加在了闰年判断里面 ,所以当不符合if中条件 , 里面的return是没有办法执行到 .所以函数没有返回值输出的就是undefined . 代码问题与修改如下:

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

另外 , 建议同学以后的作业完成后 , 可以在问答区域上传作业 . 批复作业的老师也会进行详细的指导 .

祝学习愉快 ,望采纳 .

提问者 慕UI5237198 2018-11-28 21:08:05

我else的sum前也加了return

问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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