Я пытаюсь выяснить, как я могу использовать функцию для изменения значения индекса массива объекта при вызове функции, и я не могу понять, как это сделать. Вот что у меня есть:
var direction = ["North","East","South","West"];
var car = function() {
/* Class Constructor */
this.cardinal = 0;
this.currentDirection = direction[this.cardinal];
this.showDirection = compass;
this.turnRight = rightTurn;
function compass()
{
document.write("<li>" + this.name + " is going " + this.direction + ".</li>");
}
function rightTurn()
{
if (this.cardinal < 4) {
this.cardinal = this.cardinal + 1;
this.showDirection();
} else {
this.cardinal = 0;
this.showDirection();
}
}
} // end car constructor
pontiac = new car();
Позже я вызываю функцию buy, используя эту
pontiac.turnRight();
Объект имеет немного больше, но я удалил этот раздел, чтобы его было легче читать. Я могу добавить дополнительные биты при необходимости, но я не думаю, что это действительно имеет отношение к этому. Я знаю, что неправильно выполняю функцию rightTurn (). Я использовал цикл if else, потому что он мне нужен, чтобы вернуться на север, если машина находится на западе (поскольку это последняя позиция массива)
Любая помощь приветствуется!