我对编码很陌生,而且我正在尝试完成Codecademy的Javascript课程。我已经学习了一些关于HTML / CSS的知识,而且我几乎完成了JavaScript。我研究过有类似问题的人,但这些解决方案通常涉及JQuery,我还没有学到。
这是我的HTML(index.html):
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="main.js"></script>
</head>
<body>
</body>
</html>
以下是我的JavaScript的开头:
alert();
// Acquire character's name and check to make sure it's a string
var charName = prompt("NASA Receptionist: 'Welcome to Mission Control.
May I have your last name, please?'");
var nameCheck = function(charName) {
while (typeof charName === "number") {
charName = prompt("NASA Receptionist: 'Surely, your name is not
a number... Please, may I have your last name?'");
}
};
nameCheck(charName);
注意:index.html与main.js在同一个文件夹中
当我打开index.html时,没有任何反应,甚至没有打开警报()。我错过了什么吗?
答案 0 :(得分:6)
您的脚本中有错误,因为您无法使用转义斜杠在多行中生成javascript语句。
我收到了这个错误:
SyntaxError:unterminated string literal
var charName = prompt(&#34; NASA接待员:&#39;欢迎来到Mission Control。
以下是修改后的代码:
alert();
// Acquire character's name and check to make sure it's a string
//The \r\n\ will format the string in prompt and make it appear in new line
var charName = prompt("NASA Receptionist: 'Welcome to Mission Control. \
\r\n\May I have your last name, please?'");
var nameCheck = function(charName) {
while (typeof charName === "number") {
charName = prompt("NASA Receptionist: 'Surely, your name is not \
\r\n\a number... Please, may I have your last name?'");
}
};
nameCheck(charName);
答案 1 :(得分:2)
检查浏览器源文件是否加载了main.js.
使用alert(“= loaded =”)检查警告是否被调用
答案 2 :(得分:2)
如果你甚至没有得到语法错误,那么我认为你可能错误地引用了main.js.您确定在index.html所在的目录中有这个吗? 此外,每次运行时,无论是否输入数字,typeof方法都会返回&#34; string&#34 ;.
alert(typeof charName);
&#13;