头部与身体中的Javascript变量声明

头部与身体中的Javascript变量声明,javascript,order-of-execution,Javascript,Order Of Execution,在头部声明变量和在身体中使用变量之间有区别吗 <head> <script> var girlFriendName = "Jennifer Lawrence"; </script> </head> <body> <script> console.log("I wis

在头部声明变量和在身体中使用变量之间有区别吗

       <head>
          <script>
             var girlFriendName = "Jennifer Lawrence";
           </script>
       </head>
        <body>
            <script>
             console.log("I wish my girlfriend was " + girlFriendName);
           </script>
        </body>

var girlFriendName=“詹妮弗·劳伦斯”;
log(“我希望我的女朋友是”+女朋友名);
然后声明它并在体内使用它,就像这样

          <body>
           <script>
             var girlFriendName = "Jennifer Lawrence";
           </script>
            <script>
             console.log("I wish my girlfriend was " + girlFriendName);
           </script>
         </body>

var girlFriendName=“詹妮弗·劳伦斯”;
log(“我希望我的女朋友是”+女朋友名);

是否曾经有过这样的情况,你可能想在头部而不是身体中声明它们?

从功能的角度来看,没有区别。建议将JS放在
正文的末尾


这是一个很好的实践,因为它更方便用户。首先,将加载整个DOM和CSS,这将导致页面尽快显示。如果加载javascript需要很多时间,那么实际显示可能会被推迟或阻止,页面可能会以令人震惊的方式发生变化。最初javascript不会影响页面的布局,因此加载得晚一点也不重要。

使用dom ready事件的替代方法是将脚本标记作为页面正文的最后一个直接子项。如果在页眉中声明,则可以从几个正文片段中使用它,因为页眉保证位于正文之前。