Javascript 为什么';getElementsByTagName不能在这种逻辑中工作吗?

Javascript 为什么';getElementsByTagName不能在这种逻辑中工作吗?,javascript,html-table,getelementsbytagname,Javascript,Html Table,Getelementsbytagname,只是测试一下,尝试在body标记中插入一个表,但我只能使用getElementById。我还尝试在底部插入脚本代码,但也不起作用 <html> <head> <title>Exam Test Trial</title> <script> var table; var books = {1234: "Programming for Dummies", 5667: "

只是测试一下,尝试在body标记中插入一个表,但我只能使用getElementById。我还尝试在底部插入脚本代码,但也不起作用

<html>

<head>
        <title>Exam Test Trial</title>
        <script>
        var table;
            var books = {1234: "Programming for Dummies", 5667: "Ethical Hacking", 88889: "Networks", 10000: "Firmware Code"};

                function createTable(){
                table = "<table border= '1'>";

                table += "<tr>";

                for(var isbn in books){
                    table += "<th>";
                    table += isbn;
                    table += "</th>";
                }

                table += "</tr>";
                table += "</table>";


                //var x = document.getElementById("exam").innerHTML = table;

                var y;
            }


        </script>
</head>

<body id="exam">
    <script>
        createTable();
        var x = document.getElementsByTagName("body").innerHTML = table;
    </script>
</body>

考试试验
var表;
var books={1234:“傻瓜编程”,5667:“道德黑客”,88889:“网络”,10000:“固件代码”};
函数createTable(){
表=”;
表+=”;
for(账簿中的isbn变量){
表+=”;
表+=国际标准书号;
表+=”;
}
表+=”;
表+=”;
//var x=document.getElementById(“考试”).innerHTML=table;
变量y;
}
createTable();
var x=document.getElementsByTagName(“body”).innerHTML=table;

getElementsByTagName(“body”)
返回类似数组的结构。您的意思可能是
getElementsByTagName(“body”)[0]

getElementsByTagName
返回节点列表,而不是单个节点。这就是为什么您不访问
body
元素的
innerHTML
的原因。为什么不简单地访问
document.body.innerHTML
?@是否有对第一个元素的引用?据我所知,它不是exist@Havvy是否存在
getElementByTagName
?我不确定是否存在。这是正确的答案,他不知道这是一个数组。@GwiddleWorker-不返回数组,它返回一个。;-)