我希望在点击"预订"的按钮后增加对象的价值。金额+ 1,怎么办?
var hotel = {
name : "King",
rooms: 40,
booked: 25,
checkAvailability: function() {
return this.rooms - this.booked;
}
};
function decA(){
hotel.booked[ this + 1 ];
}
var elName = document.getElementById("hotelname");
elName.textContent = hotel.name + hotel.rooms;
var elRooms = document.getElementById("demo");
elRooms.textContent = hotel.checkAvailability();
答案 0 :(得分:0)
我认为这不起作用的原因是因为变量的 范围 仅在变量hotel
内,因为 < em>在变量hotel
中定义 。你可以在外面定义变量hotel
(例如在文档的顶部),然后在变量{中使用 {1}}。这应该有用。
答案 1 :(得分:0)
您可以定义一个函数来获取和设置内部范围,例如:
var hotel = {
name : "King",
rooms: 40,
booked: 25,
checkAvailability: function() {
return this.rooms - this.booked;
},
bookARoom: function () {
return this.booked++;
},
getBookedRoom: function () {
return this.booked;
}
};
,您可以调用hotel.getBookedRoom()和hotel.bookARoom()来获取和设置内部范围