簡體   English   中英

外部.js變量返回未定義?

[英]external .js variable coming back undefined?

我正在嘗試將一個外部.js變量添加到我的index.html中,但是該變量只是返回未定義狀態。 如果該變量在HTML文件中,則它起作用,但是當我從外部.js文件中調用該變量時,它只是讀未定義的?

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <link rel="stylesheet" href="assets/css/main.css" />

    <title>LoginSystem</title>

    <script src="../server.js"></script>

</head>    
<body>

    <div id="display"></div>

    <script>
        var t = setInterval(function() {
            // you can change `random` to any variable you want to be displayed

            document.getElementById("display").innerHTML = random;

        }, 500);
    </script>    
</body>

和javascript文件

var random = Math.random();

任何幫助將不勝感激,謝謝。

我無法解釋為什么你變得undefined 但是,由於您在傳遞給setInterval的函數范圍之外的變量中設置了random ,因此它將始終顯示相同的隨機數。 您需要設置random傳遞給函數內部setInterval如果你想要一個新的隨機數出現。

server.js

function getRandomNumber() {
  return Math.random();
}

index.html

var t = setInterval(function() {
  document.getElementById("display").innerHTML = getRandomNumber();
}, 500);

演示版

https://repl.it/@AnonymousSB/RemarkableBowedNagware

我認為您可能在server.js的錯誤目錄中看到以下行:

 <script src="../server.js"></script>

確保文件路徑正確,如果您的索引和server.js位於同一個文件夾中,則應為:

<script src="./server.js"></script>

我已經測試了相同的代碼,並且對我來說非常有效。

希望這可以幫助。

您的外部javascript文件路徑不正確。 ../server.js替換/server.js

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM