1-6编程练习

1-6编程练习

这样可以吗?

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>return</title>
</head>
<body>
<script>
    var input=prompt("请输入您的密码");
    // 补充代码
    function funName(){
      var num=input.length;
        if(num>=6&&num<=12){
            return;
        }else if(num<6){
            return input="密码不能小于6位数";
        }else{
            return input="密码不能大于12位数";
        }
        
    }
    alert(funName(input));
</script>
</body>
</html>


正在回答

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

1回答

同学,我测试了你的代码,虽然结果没有问题,但是最后你在调用函数时,传了实参,如下:

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

然而在封装的函数中是没有形参的,如下:

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

你这样写是没有意义的,实参是传递不进去的,函数里面用到的input还是外面全局变量的input。所以建议不用传递实参了。直接调用函数就可以,如下:

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

一起加油啊,ヾ(◍°∇°◍)ノ゙

  • bbbboom #1
    还有两个小的建议: (1)当(num>=6&&num<=12)的时候,程序会弹出undefined,这样在程序中是不规范的,可以改成弹出‘密码输入正确’之类的语句。 (2)return 的返回值,不需要用input变量来接收,直接弹出就可以了。
    2018-01-29 14:24:41
  • 改吃素的狮子 提问者 #2
    非常感谢!
    2018-01-29 15:22:05
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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