为什么javascript在html之前加载?我把身体';将内容放在脚本之前,但仍会执行';nt工作

为什么javascript在html之前加载?我把身体';将内容放在脚本之前,但仍会执行';nt工作,javascript,html,Javascript,Html,这是我的代码,有人能告诉我为什么h1在警报结束之前不加载,即使脚本标记在正文的末尾? 我是javascript新手,所以我可能错过了一些非常明显的东西。请阅读这篇关于关键渲染路径的文章 到底是什么问题?我看到页面直到javascript完成才加载。显然,HTML首先加载,否则javascript无法加载。你所看到的到底是什么?它与你所期望的有什么不同?你贴出的问题无法回答,因为没人能说出你在说什么。你怎么会认为它是真的?你真的在问为什么在JS文件中运行JS之前要等待DOM就绪?你知道我们看不到你

这是我的代码,有人能告诉我为什么h1在警报结束之前不加载,即使脚本标记在正文的末尾?
我是javascript新手,所以我可能错过了一些非常明显的东西。

请阅读这篇关于关键渲染路径的文章

到底是什么问题?我看到页面直到javascript完成才加载。显然,HTML首先加载,否则javascript无法加载。你所看到的到底是什么?它与你所期望的有什么不同?你贴出的问题无法回答,因为没人能说出你在说什么。你怎么会认为它是真的?你真的在问为什么在JS文件中运行JS之前要等待DOM就绪?你知道我们看不到你的JS代码,对吗?我不明白,我该如何决定资源加载的顺序(我对javascript和DOM很陌生)。
<!DOCTYPE html>
<html>
<head>
    <title>facebook</title>
</head>
<body>
    <h1>facebook</h1>
    <script type="text/javascript" src="face.js"></script>
</body>
</html>
var database = [
    {
        username: "yotythepro",
        password: "1234"
    },
    {
        username: "ravit012",
        password: "3314"
    }
];
var newsfeed = [
    {
        username: "Bobby",
        timeline: "So tired from all that learning!"
    },
    {
        username: "Sally",
        timeline: "Javascript is sooooo cool!"
    },
    {
        username: "Mitch",
        timeline: "Javascript is preeetyy cool!"
    }
];
var signName = prompt("username?");
var signPass = prompt("password?");

function signIn(name, pass) {
    database.forEach(function(user, i){ 
        if (name === database[i].username && pass === database[i].password) {
            console.log(newsfeed);
        } else if (i === database.length - 1) {
            alert("username or password are incorrect!");
        }
    })
}
signIn(signName,signPass);