Javascript 将JS函数的返回值分配给变量失败,并出现错误

Javascript 将JS函数的返回值分配给变量失败,并出现错误,javascript,html,web,Javascript,Html,Web,我有一个简单的HTML文档和JS文件,我不明白为什么这个简单的代码不起作用 以下是index.html: 它只显示测试1警报,然后什么也不显示。如果我删除isOnline函数调用,它将显示测试1警报,然后是测试3警报,没有问题。我收到未捕获的TypeError:isOnline不是浏览器控制台中的函数 更新: 事实证明,这是因为我用与函数相同的名称命名了变量。我是JavaScript新手,不知道这个限制 通常,每次交互都可以执行一次警报。虽然我用ChromeDevTools尝试了你的代码,但它仍

我有一个简单的HTML文档和JS文件,我不明白为什么这个简单的代码不起作用

以下是index.html:

它只显示测试1警报,然后什么也不显示。如果我删除isOnline函数调用,它将显示测试1警报,然后是测试3警报,没有问题。我收到未捕获的TypeError:isOnline不是浏览器控制台中的函数

更新:


事实证明,这是因为我用与函数相同的名称命名了变量。我是JavaScript新手,不知道这个限制

通常,每次交互都可以执行一次警报。虽然我用ChromeDevTools尝试了你的代码,但它仍然有效。这可能是因为html文件将js文件读取为一次警报,然后完成函数

function getStatus() {
alert("1");
isOnline();
alert("3");
}
function isOnline() {
alert("2");
}
getStatus();
这是成功的

为什么不呢


再次测试

这是因为我使用与函数相同的名称命名了变量。

无法复制,但请检查控制台是否有错误控制台中显示的错误消息?代码中没有错误。它工作正常。我在问题中添加了浏览器控制台中的错误截图。上面写着:uncaughttypeerror:isOnline不是一个函数我在这里共享代码时删除了一些东西,结果发现我删除了一个重要的部分。如果将isOnline函数的返回值指定给变量,则会导致错误。这就是为什么没有人能够繁殖,我不认为这有什么关系。我用那个细节更新了我的问题。
function getStatus() {
alert("1");
isOnline();
alert("3");
}
function isOnline() {
alert("2");
}
getStatus();
<!DOCTYPE HTML>
<html>
<head>
    <script>
        function getStatus() {
                alert('Test 1');
            isOnline();
                alert('Test 3');
                }

                function isOnline() {
              alert('Test 2');
                }
    </script>
</head>
<body>
    <script>getStatus();</script>
</body>