老师麻烦检查下

老师麻烦检查下

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

</head>

<body>

    <script>

        var y=prompt("请输入登录邮箱")

        function m(y){

            var x=y.indexOf("@");

            c=y.substring(0,5);


            return y.substr(x) ;

        }

        var l=m(y),

        h=m(y)

        document.write("邮箱的用户名是:"+h+"<br/>"+"登录邮箱域名是:"+l+"邮箱");

       

    </script>

</body>

</html>

问题描述:

老师 这是我写的 说实在的 我不懂怎么截取@之前那些字符串,但我去看了下问题置顶的那位同学写的  他在substring()中写了个a 也能输出出来 可是第二个不是必须要填数字吗

正在回答 回答被采纳积分+1

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

2回答
好帮手慕星星 2021-12-23 13:30:46

同学你好,实参一样的情况下,函数无论重复调用几次,返回的内容是一样的。所以原来的代码中l和h的结果一样

https://img1.sycdn.imooc.com//climg/61c4093109b1a3a507570251.jpg

那么我们就可以在return后面拼接好结果返回,符合拼接规范即可。

好帮手慕星星 2021-12-23 13:12:36

同学你好,代码存在问题,输入‘imooc@163.com’,输出结果是

https://img1.sycdn.imooc.com//climg/61c4038a098a016203520063.jpg

参考修改:

1、变量x获取的是@字符位置,那么从0到x位置获取的是用户名

2、x+1后的位置获取的是邮箱域名

https://img1.sycdn.imooc.com//climg/61c4047209727f1209790564.jpg

3、置顶问答代码中substring(0,a)有两个参数,并不是只有a,看仔细一些

https://img1.sycdn.imooc.com//climg/61c404cd0927bd5408330147.jpg

第二个参数不是必须的,如果不写,会从第一个参数位置截取到字符末尾。

祝学习愉快!

  • 提问者 豆包侠 #1

    老师 我明白了 谢谢

    2021-12-23 13:13:40
  • 提问者 豆包侠 #2

    老师我明白了 这里的

    var c=y.slice(0,x);

               var d=y.substr(x+1)

    但是现在对于js里的这些写法规则我觉得我不太行 ,比如return后面的返回值 写这个返回值 有什么规范吗 


    2021-12-23 13:25:24
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

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