为了账号安全,请及时绑定邮箱和手机立即绑定

看代码,为什么输出的undefined.

没发现哪里有错误,为啥在360浏览器总出输出undefined呢

正在回答

3 回答

JS中空格也是作为一个文本节点. 就是这么规定了 可以判断 if(elements.nodeType == 3 ){...}

0 回复 有任何疑惑可以回复我~
<ul id="con">
    <li id="lesson1">javascript
      <ul> 
          <li id="tcon"> 基础语法</li>
          <li>流程控制语句</li>
          <li>函数</li>
          <li>事件</li>
          <li>DOM</li>
      </ul>
    </li>
    <li id="lesson2">das</li>
    <li id="lesson3">dadf</li>
    <li id="lesson4">HTML/CSS 
      <ul>
        <li>文字</li>
        <li>段落</li>
        <li>表单</li>
        <li>表格</li>  
      </ul> 
    </li></ul>

这个undefined其实是空白结点,也就是结尾的</li>和</ul>之间的空白结点,课程里面讲过IE浏览器会忽略,而其他浏览器不会,你把表格代码结尾像我上面给的修改一下就可以了。望采纳

0 回复 有任何疑惑可以回复我~
#1

初影_chaos

相关课程位置,JavaScript进阶篇 9-8
2017-02-07 回复 有任何疑惑可以回复我~
#2

web小菜 提问者

谷歌浏览器也是输出undefined。真搞不懂这个节的知识。学习这个有什么用呢?
2017-02-08 回复 有任何疑惑可以回复我~
#3

初影_chaos 回复 web小菜 提问者

节点之间的空白符,在firefox、chrome、opera、safari浏览器是文本节点,所以谷歌chrome也一样。学习这个也不是让你用到它,是让你知道存在这么个东西,像你给出的代码想输出html/css课程的内容,你知道这个空白结点的存在才知道怎么写才会输出你想要的,而不是输出undefined.
2017-02-08 回复 有任何疑惑可以回复我~

我试了一下

<ul>
        <li>文字</li>
        <li>段落</li>
        <li>表单</li>
        <li>表格</li>  
      </ul> 
    </li>
</ul>  
//这样会输出undefined

<ul>
        <li>文字</li>
        <li>段落</li>
        <li>表单</li>
        <li>表格</li>  
      </ul> 
    </li></ul>  
    
//这样就可以输出正确结果
//我也不知道为什么会这样。。


0 回复 有任何疑惑可以回复我~
#1

O1dSky

我试多了几次,发现最后的 </li>和</ul>之间有多一个空格都不行,具体原因等大神来回答了
2017-02-07 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

看代码,为什么输出的undefined.

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信