使用`getElementsByTagName`获取单个元素

Jam*_*mna 1 html javascript dom getelementsbytagname

我知道如果我们想要找到一组元素,getElementsByTagName就是我们的方法,它返回一个NodeList.但如果我们正在寻找带有"body"的标签名称,那么为什么我们需要在("body")元素之后添加[0]?HTML文档中只有一个正文标记.

 var body = document.getElementsByTagName("body")[0];
 body.className = "unreadable";
Run Code Online (Sandbox Code Playgroud)

为什么我们不能像这样编写没有索引[0]的代码

 var body = document.getElementsByTagName("body");
 body.className = "unreadable";
Run Code Online (Sandbox Code Playgroud)

如果我写这个代码,那么不可读的类将不会添加body标签...为什么?

Mol*_*Man 9

因为document.getElementsByTagNameallways返回NodeList.如果你想找到更简单的方法来检索身体,你可以使用document.body