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

x=document.getElementsByTagName("div")[0].childNodes

我想问x=document.getElementsByTagName("div")[0].childNodes的[0]是什么意思?


提问者:艾玛呦 2016-10-04 19:33

个回答

  • 慕粉3951534
    2016-10-12 16:34:14

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

    我们把这行代码拆解看,首先明确,这节课的示例里是有两个 div 的,

    http://img.mukewang.com/57fdf42b000166b104100274.jpg

    当然这不影响,就算只有一个 div 也需要加 [0],不会默认。

    先看这句

    document.getElementsByTagName("div")

    这句是获取标签为 div 的元素对象列表,无论有几个,哪怕一个都没有,返回值的类型也是 nodelist(空的 nodelist),可以当做数组看。

    如果有一个,那么就是元素个数为一的数组,两个就是元素个数为二的数组,依次类推。

    所以,可以把这一句直接当做是一个数组看待,现在要从这个数组取第一个元素,后面当然要加 [0]。

    不知有没有说明白,欢迎讨论,一起进步。

  • 不二rua
    2016-10-05 02:28:02

    document.getElementsByTagName('div') 获取的是所有div标签的数组,因为需要的div是第一个,在数组中下标是0,所以用[0] 选择这个div