请教老师这段代码哪里有问题

请教老师这段代码哪里有问题

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title> </title>

</head>

<body>

<script>

    //补充代码

    var input=prompt('请输入登录邮箱');

    for(var i=0;i<input.length;i++){

        if(input.indexOf(i)==='@'){

            var user=input.slice(0,input.indexOf(i));

            document.write('邮箱的用户名是:'+user+'<br/>');

            var domain=input.slice(input.indexOf(i)+1);

            document.write('登录的邮箱域名是:'+domain+'邮箱');

        }

    }

</script>

</body>

</html>


正在回答

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

1回答

同学你好,从代码中看出对indexOf方法理解有问题。indexOf参数为指定字符,返回值为首次出现的位置,例如

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

而代码中的if判断想要的是字符是否与@一致,需要用到charAt()方法,参考修改

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

自己再测试下,祝学习愉快!

  • 慕侠4369238 提问者 #1
    多谢老师回复,确实是我理解错了,把indexOf理解成charAt了
    2020-07-31 14:10:00
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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