2017-02-19 88 views
4

我有一个简单的HTML页面与JavaScript代码。HTML,JavaScript和ERR_FILE_NOT_FOUND错误

HTML

<!doctype html> 
<html> 
    <head> 
     <meta charset="utf-8" /> 
     <title>Sink The Battle Ship</title> 
    </head> 
    <body> 
     <h1>Battleship</h1> 
     <script src="battleship.js"></script> 
    </body> 
</html> 

的JavaScript

var location = Math.floor(Math.random() * 5); 
var numberOfGuesses = 0; 
var isSunk = false; 
var guess; 
var guess = prompt("Ready, aim, fire! (enter a number from 0-6):"); 
var guessedLocation = parseInt(guess); 
console.log(guess); 
console.log(guessedLocation); 

我每次启动浏览器的HTML,提示显示,当我输入一个值,它给了我一个错误“ERR_FILE_NOT_FOUND ”。它看起来像浏览器试图重新引导到我输入的值的页面。任何想法在这里出了什么问题?我试图在不同的浏览器中打开html,但仍然没有运气。

+1

没有帮助。 –

+0

请检查我的答案,我刚才在这里评论说,在我5年的js开发中,这是我第一次看到这个错误,哈哈哈,我不知道这可能发生,但它确实有道理。 –

回答

3

问题是你正在重新定义一个叫做位置的全局变量。

当你声明这样

var location = 1; 

一个变量是一样的做这个

window.location = 1; 

位置是用来定义在页面(位置)的用户是在浏览器中的变量。

你可以做两件事,

1 - 重命名你的变量位置:$位置,location_2,MY_LOCATION

var myLocation = Math.floor(Math.random() * 5); 

2 - 创建一个本地范围

(function(){ 
    var location = Math.floor(Math.random() * 5); 
    var numberOfGuesses = 0; 
    var isSunk = false; 
    var guess = prompt("Ready, aim, fire! (enter a number from 0-6):"); 
    var guessedLocation = parseInt(guess); 
    console.log(guess); 
    console.log(guessedLocation); 
})() 

此外,停止重新声明变量的猜测,只能使用一个 '无功' 为每个变量名

(function(){ 
 
    var location = Math.floor(Math.random() * 5); 
 
    var numberOfGuesses = 0; 
 
    var isSunk = false; 
 
    var guess; 
 
    var guess = prompt("Ready, aim, fire! (enter a number from 0-6):"); 
 
    var guessedLocation = parseInt(guess); 
 
    console.log(location); 
 
    console.log(guessedLocation); 
 
    guessedLocation == location ? console.log('you sank me!') : console.log('ha! missed...') 
 
})();
<!doctype html> 
 
<html> 
 
    <head> 
 
     <meta charset="utf-8" /> 
 
     <title>Sink The Battle Ship</title> 
 
    </head> 
 
    <body> 
 
     <h1>Battleship</h1> 
 
     <script src="battleship.js"></script> 
 
    </body> 
 
</html>

+1

非常感谢。解决了我的问题。我刚刚开始使用JavaScript,并开始讨论它。 –

+0

没问题,只要记住将最佳答案标记为答案,以便我们可以获得甜蜜的声望点 –