var message = "";
var student;
function print(message) {
var outputDiv = document.getElementById("output");
outputDiv.innerHTML = message;
}
function getStudentReport(student) {
let report = "<h2>Student: " + student.name + "</h2>";
report += "<p>Track: " + student.track + "</p>";
report += "<p>Points: " + student.points + "</p>";
report += "<p>Achievements: " + student.achievements + "</p>";
return report;
}
while (true) {
var search = prompt('Search student record: type a name [Jody
] (or type "quit" to end)');
if (search === null || search.toLowerCase() === "quit") {
break;
}
for (var i = 0; i < students.length; i += 1) {
student = students[i];
if (student.name === search) {
message = getStudentReport(student);
print(message);
}
}
}
我遇到以下问题,到目前为止,我正在尝试通过prompt()
收集用户信息,到目前为止,默认情况下prompt()
始终会返回一个字符串,但是在这种情况下,它将返回null
作为输出。
只需删除换行符。请查看以下代码段。
var message = "";
var students = [{
name: 'Jody',
track: 2,
points: 80,
achievements: 'none'
}];
function print(message) {
var outputDiv = document.getElementById("output");
outputDiv.innerHTML = message;
}
function getStudentReport(student) {
let report = "<h2>Student: " + student.name + "</h2>";
report += "<p>Track: " + student.track + "</p>";
report += "<p>Points: " + student.points + "</p>";
report += "<p>Achievements: " + student.achievements + "</p>";
return report;
}
while (true) {
var search = prompt('Search student record: type a name [Jody] (or type "quit" to end)');
if (search === null || search.toLowerCase() === "quit") {
break;
}
for (var i = 0; i < students.length; i += 1) {
student = students[i];
if (student.name === search) {
message = getStudentReport(student);
print(message);
}
}
}
<div id="output"></div>
此两行:
var search = prompt('Search student record: type a name [Jody
] (or type "quit" to end)');
加入一行。
var search = prompt('Search student record: type a name [Jody] (or type "quit" to end)');
新行(换行符)中断了您的代码。
还可以在第一行的末尾使用插值``或\进行求解。