问答详情
源自:9-4 区别getElementByID,getElementsByName,getElementsByTagName

第一个“同学代码”的问题

最后一个效果他为什么要这样写?

 for(var i=0;i<j.length;i++)  这一段中此时的j不是数组,怎么要写i<j.length;

if else就可以实现了,他这个for语句我觉得是错的,你们觉得呢?还是我搞错了?




function checkone(){

            clearall();

            var hobby = document.getElementsByName("hobby");

            var j=document.getElementById("wb").value;

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

                if(j.charAt(i)>6 || j.charAt(i)<1){

                    alert("越界,请重新输入!");

                    document.getElementById("wb").value="";

                }

            }

                for(var n=0;n<j.length;n++){

                        hobby[(j.charAt(n))-1].checked=true; 

                }

        }


提问者:慕圣9424722 2017-08-20 20:22

个回答

  • 我要SSR
    2017-08-22 11:30:32
    已采纳

    很怪。。。明明很简单的问题偏偏要炫技,绕。。。这个for就是来捣乱的,i<j.length这是什么鬼?我tm输个两位数你是不是也要弹两次警告框。。。而且你确定这能运行正确???

  • 撒手没__
    2017-08-20 21:52:57

    j.length获取的是字符串长度吧 

  • 慕无忌4230737
    2017-08-20 21:48:24

    我没有看出来wb是什么鬼,但是应该是,j获取的是一组值,所以。