问答详情
源自:9-8 访问子节点childNodes

为什么要加 [0] ?换成 [1]又是什么意思?

<div>

  javascript  

  <p>javascript</p>

  <div>jQuery</div>

  <h5>PHP</h5>

</div>

<script type="text/javascript">

    var d = document.getElementsByTagName("div")[0].childNodes;

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

        document.write(d[i].nodeName + "<br>");

        document.write(d[i].nodeValue + "<br>");

        document.write(d[i].nodeType + "<br>");

    }

 


提问者:weixin_慕先生9089348 2020-03-13 15:43

个回答

  • 光太郎
    2020-04-10 17:50:04

    getElementsByTagName()方法返回的是带有指定标签名的节点对象集合。

  • 金刚无敌葫芦娃
    2020-03-20 14:55:42

    document.getElementsByTagName("div")的意思是,获取了所有的div存在一个数组

    [0]是选择了第一个div,即最外面的那个div

    .childNodes是获取子节点,意思是最外面的div包含的子节点


    主要是通过getElementsByTagName获取到的是个数组,

    如果给第一个div加个id=“div”,然后使用getElementById,就可以写成

    var d = document.getElementById("div").childNodes;

  • 慕仙8560687
    2020-03-17 00:16:49

    代码里有两个div,通过标签名访问节点得到的是一个数组,不加[0]的话,变量d就是个数组了。换成[1]就访问的是第二个div标签