js问题,获取title为什么这样获取?

<!DOCTYPE html>
<html lang="en">
      <head>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0">
            <title>Document</title>
            <style>
                 

            </style>
            <script>
                  window.onload = function(){
                        
                        var i = 0;
                        window.onkeydown = function(){
                              document.title.innerHTML = i++;
                        }
                  }

            </script>
      </head>
      <body>
            
      </body>
</html>

获取title标签为什么不是上面这样写?而是直接document.title.= i++;就可以了?

因为页面的title属性是直接在document对象里的,你打印一下可以直接看见,innerHTML是dom中的文本元素,是dom对象的一个属性,可以这样理解,document对象下有title属性和dom属性,dom属性同时也是一个对象,而innerHTML是dom对象下的属性。

title 属性可返回当前文档的标题( HTML title 元素中的文本),而不是title这个dom对象,你要返回dom要用

 

document.querySelector('title').innerHTML='xx'

document.title.= i++这是修改title赋值,innerHTML是文档内容,可以document.body.innerhtml=i++