2-22作业,请老师检查、答疑,谢谢。
来源:2-22 编程练习
慕桂英1122475
2023-03-22 10:16:55
请老师检查,按照任务提示:2、定义一个函数funName(input),需要有一个参数,这个参数就是用来传递从页面获取的input。
但是我代码中写成: function funName()
似乎执行起来也没有问题哦。所以写不写的区别在哪里?
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>return</title> </head> <body> <script> var input=prompt("请输入您的密码"); function funName() { if(input.length>=6 && input.length<=12){return '密码格式正确';} else if (input.length<6 ){return '密码不能小于6位数';} else if (input.length>12 ){return '密码不能大于12位数';} } alert(funName(input)); </script> </body> </html>
1回答
好帮手慕小李
2023-03-22
同学你好,理解有偏差如下:
这里跟是否传参接参没什么太大的关系,如下:
而是作用域的问题。
因js有作用域的概念且它比较灵活,函数这一块传参接参这里要注意是否使用了全局作用域中的变量,那么如本题中参数input确实不需要写就可以得到结果,但是要注意例子中代码量太少了。如果说公司项目中代码很多的情况下这样对于维护是不友好的,且在多人合作开发的时候某同事跟我们声明的变量重名了,那到时候出问题了找都不好找。
所以在js中使用函数的话,如有参数不管是形参还是实参都要写上。
祝学习愉快!
相似问题