关于作业1-14老师批改后的一些问题。
来源:1-20 作业题
夜色温柔QAQ
2018-05-10 16:55:32
感谢老师指出了我的3个错误。关于实现这个代码的想法很是惊艳。
以下是老师的代码,为了方便不在写个js文件夹,直接写在了html里面。
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8">
</head>
<body>
<script>
getDate()
function getDate(){
var year=prompt("请输入您的出生年份");
var month=prompt("请输入您的出生月份");
var day=prompt("请输入您的出生日期");
document.write("您的出生日期在"+year+"年第"+zero(year,month,day)+"天");
}
function zero(year,month,day){
var arr=[31,29,31,30,31,30,31,31,30,31,30,31];
if(year%4===0 &&year%100!0 || year%400===0){
for(var b=0,i=1;i<month;i++){
b+=arr[i-1]
}
}else{
for(var b=0,i=1;i<month;i++){
arr[1]=28;
b+=arr[i-1];
}
}
return parseInt(b)+parseInt(day);
}
</script>
</body>
</html>
1.学生自己买的有参考书,关于局部变量还有全局变量知识点还是有所了解,写过两个函数分别封装弹窗日期和计算,但是由于作用域的关系根本调用不了,尝试了一下闭包,完全没用,可能学生是初学者吧,看到老师直接在函数里面调用函数这个方法,有点惊艳,老师可以谈一下这个方法的思想或者之类的思想吗?
1回答
好帮手慕夭夭
2018-05-10
1.函数是一个可以重复使用的代码块 ,在任何要使用它的地方执行:函数名+()
2.在函数可以调用其他函数,并且在调用其他参数时把函数里面定义的变量传递到其他函数里面 . 根据这种思想,作业中函数getDate()里面调用zero() ,并且把自己里面定义的变量作为参数传递给zero(),zero()函数里面就可以使用这些变量了.
效果的实现并不是唯一的 ,如有其他的实现方法也可以跟大家分享一下 .
感谢对老师的肯定,会转达给老师,希望能解答你的疑惑 ,祝学习愉快 !
相似问题