老师,我的结果中末尾出现一串BR子节点

来源:7-7 编程练习

qq_慕村9245204

2019-06-07 13:09:06

    function BL(count,ele){
        var len=ele.childNodes.length;
        for(var i=0;i<len;i++){
            var n=ele.childNodes[i];
            if(n.tagName){
                document.write(count+n.tagName+'<br>');
                BL(count+' * ',n);
            }
        }
    }
    BL(' * ',document);


写回答

3回答

Miss路

2019-06-07

同学,你好。

原来你是这个意思,那以后再问的时候尽量的说清楚,这样才能高效的为你解决问题,不然老是可能猜不到你真正的疑问。

这块的内容,你没有按照老师课程中讲的思路做,所以出现了异常情况,严谨、正确的思路应该是老师讲的那种方式,在写代码的过程中,往往不正确的思路就会出现各种各样的问题,原因就比较多了。得分析每一步错的理由,也没有必要去这么做,当然这个不是说没有用,以后等你的能力比较强的时候,能够分析代码底层原理,并且知识结构非常完善的时候,可以去研究一下,但是在初学的时候,不建议这么做,我们先要学会正确的,才能够分析错误的,如果经常探索和现在能力不匹配的技能,其实很难理解,也很打击自信,所以还是一步一步来,先把正确的学会,之后才有能力灵活改变更多的实现方法。

如果帮助到了你,欢迎采纳!

祝学习愉快!

0

Miss路

2019-06-07

同学,你好。

你在这儿输出了:

http://img.mukewang.com/climg/5cfa0c4d0001d57b12880648.jpg

把这个去掉就没有了。

自己写的代码都不知道什么意思吗?找问题的时候,首先是在页面中显示,所以要先检查这句话:document.write(count+n.tagName+'<br>');得慢慢掌握找错的能力。

如果帮助到了你,欢迎采纳!

祝学习愉快!

0
hq_慕村9245204
h 我知道我自己写的代码是什么意思,n.tagName是标签名。我的问题是,我的代码中并没有这些<br>标签,就是我的<script >标签后没有添加任何的换行标签,为什么还会出现呢? ps:自己也测试了,如果写document.write(n.tagName)就不会输出换行标签了,但是无法实现输出内容换行。
h019-06-07
共1条回复

qq_慕村9245204

提问者

2019-06-07

附加运行结果

* HTML
* * HEAD
* * * META
* * * TITLE
* * BODY
* * * DIV
* * * * P
* * * * * SPAN
* * * * * * A
* * * * * * A
* * * * * * A
* * * * * SPAN
* * * * * * A
* * * * * * A
* * * * * * A
* * * * * SPAN
* * * * * * A
* * * * * * A
* * * * * * A
* * * SCRIPT
* * * BR
* * * BR
* * * BR
* * * BR
* * * BR

0

0 学习 · 40143 问题

查看课程