1
我有一个简单的javascript代码,但它不起作用。我的代码是:html body onload不起作用
<html>
<head>
<title>JavaScript</title>
<script>
var target;
var guess_input;
var guesses = 0;
var finished = false;
var colors = ["black","blue","green","purple","red","white","yellow"];
function do(){
var random = Math.random();
var index = Math.floor(random * 7);
target = colors[index];
while(!finished){
guess_input = prompt("I am thinking of a color : black, blue, green, purple, red, white \n\n" + "What color am i thinking of?");
guesses++;
finished = check();
}
var myBody = document.getElementsByTagName("body")[0];
myBody.style.background = target;
}
function check(){
if (guess_input > target){
alert("your color is alphabetically higher than mine");
return false;
}
if (guess_input < target){
alert("your color is alphabetically lower than mine");
return false;
}
if (guess_input == target){
alert("your color is correct! it tooks you" + guesses "guesses to finish the game!");
return true;
}
else {
alert("Sorry, I do not recoginize your color");
return false;
}
</script>
</head>
<body onload = "do()">
</body>
</html>
的错误信息是:未捕获的SyntaxError:意外的标记做 part2.html:53未捕获的SyntaxError:意外的标记),这是“功能做的()”,所以有什么问题?谢谢!
重命名功能不再次尝试做函数名等。这可能是一个关键字问题。 –
这确实是一个关键字问题。在javascript中有一些名为'do {} while()'的函数,并且使用'do'作为函数名称与之冲突,而'do'就是这样一个**保留关键字**,它不能用作函数的名称,变量等 – adeneo