所以这就是说我的fiat对象中有一个未定义的变量?
问题描述:
var fiat = {
make: fiat,
model: "500",
year: 1957,
color: "medium Blue",
passengers: 2,
convertible: false,
mileage: 88000,
started: false,
start: function() {
started = true;
},
stop: function() {
started = false;
},
drive: function() {
if (started) {
alert("Zoom Zoom!");
} else {
alert("Car needs to be started first.");
}
}
};
fiat.start();
fiat.drive();
所以它一直说一个变量没有定义。这就是它让我在书中写出来的方式。我也试着说,如果(fiat.started),但也没有效果。有没有其他的方式来写它?所以这就是说我的fiat对象中有一个未定义的变量?
答
started
未定义。这相当于写作foo = "bar"
。通过使用var
或将其附加到对象中的预定义started
来定义它。
如果您想使其成为全局变量,请将var started;
添加到代码的开头。
在你的情况下,通过调用对象属性的功能,取代started
内start()
和stop()
与this.started
。
[在方法'start'和'stop'和'drive'中使用'this.started'。](https://jsfiddle.net/tusharj/z1a2g90x/) – Tushar
“在书”什么书? – leDominatre