[英]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
如果你想要一個新的隨機數出現。
function getRandomNumber() {
return Math.random();
}
var t = setInterval(function() {
document.getElementById("display").innerHTML = getRandomNumber();
}, 500);
我認為您可能在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.