我有一项家庭作业要更正一些阻止函数执行的 Javascript 代码。我已经纠正了我能找到的所有内容,甚至使用 JSFiddle 和 JSHint 来确保。所以没有留下语法错误,但一定有逻辑错误,因为没有任何工作。如果能快速查看我的代码,我将不胜感激,我确信这是我忽略的一个小问题。谢谢!
(这里肯定会有一些困惑的代码,我尝试更改了多少东西,对此深表歉意)。
首先是最基本的 HTML:
<body>
<p id="message"></p>
<p id="movies"></p>
<p id="object"></p>
</body>
然后是 JS:
// Define variables
var output = document.getElementById("message");
var BR = "<br>";
var makeBreakfast;
var mood;
var energyLevel;
var doWork;
var powerOn;
var command;
var duration;
var quitWork;
// Define robot object
var robot = {
material: "titanium",
mood: "happy",
energyLevel: 100,
powerOn: false,
command: "Sweeping the floor",
duration: 10,
favoriteMovies: ["2001: A Space Odyssey", "The Terminator", "I, Robot", "WALL-E", "Short Circuit", "Forbidden Planet"]
};
makeBreakfast = function (newMood) {
mood = newMood;
if (mood === "Happy") {
output.innerHTML += "Here are your waffles and milk, master." + BR;
} else {
output.innerHTML += "Here is your burnt toast and lukewarm water, master." + BR;
energyLevel = 50;
}
};
doWork = function () {
if (!powerOn) {
powerOn = true;
output.innerHtml += "My current task is: " + command + ". Duration: " + duration + " minutes." + BR;
}
};
quitWork = function () {
if (powerOn) {
energyLevel = 90;
powerOn = false;
command = "Taking a nap";
}
};
// Make robot do housework
doWork();
quitWork();
完整的作业如下: 1)修改代码,使doWork和quitWork正常执行。 2) 调用 makeBreakfast 参数并使用字符串“mad”作为参数。 3)添加一个新的方法并调用它来显示一个字符串(这部分省略了,现在没有帮助) 4) 列出所有机器人最喜欢的电影,每部电影占一行。 5) 使用命名索引语法为机器人对象添加一个名为语言的新属性。使用您选择的语言对其进行初始化。 6) 使用命名索引语法,遍历对象并在新行中列出每个属性和值对。在新段落中显示结果。
我真的只想要关于#1 的帮助,但如果看到完整的作业有帮助,那就是它。谢谢大家!
最佳答案
需要把它变成一个对象,然后告诉那个可怜的笨蛋给你做早餐!
( Full Difference )
// Define variables
var output = document.getElementById("message");
var movies = document.getElementById("movies");
// Define variables
var output = document.getElementById("message");
var movies = document.getElementById("movies");
var object = document.getElementById("object");
var BR = "<br>";
// Define robot object
var robot = {
material: "titanium",
mood: "Happy",
energyLevel: 100,
powerOn: false,
command: "Sweeping the floor",
duration: 10,
favoriteMovies: ["2001: A Space Odyssey", "The Terminator", "I, Robot", "WALL-E", "Short Circuit", "Forbidden Planet"],
makeBreakfast: function (newMood) {
if(newMood) this.mood = newMood;
this.command = "Making breakfast";
this.doWork();
if (this.mood === "Happy") {
output.innerHTML += "Here are your waffles and milk, master." + BR;
} else {
output.innerHTML += "Here is your burnt toast and lukewarm water, master." + BR;
this.energyLevel = 50;
}
},
doWork: function () {
if(!this.powerOn) {
this.powerOn = true;
output.innerHTML += "My current task is: " + this.command + ". Duration: " + this.duration + " minutes." + BR;
}
},
quitWork: function () {
if (this.powerOn) {
this.energyLevel = 90;
this.powerOn = false;
this.command = "Taking a nap";
output.innerHTML += "My current task is: " + this.command + ". Duration: " + this.duration + " minutes." + BR;
}
}
};
// Make robot do housework
robot.doWork();
robot.quitWork();
robot.makeBreakfast();
robot.quitWork();
robot.makeBreakfast("Mad");
robot.quitWork();
<body>
<p id="message"></p>
<p id="movies"></p>
<p id="object"></p>
</body>
关于javascript - JS 对象和函数更正,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30633019/