Ключ объекта JavaScript не присваивается переменной? - PullRequest
0 голосов
/ 05 июля 2019

Я пытаюсь присвоить значение boxSpaces[0] переменной результата в функции decalreWinner(), но назначение не выполняется.

function assignSpace(mark, box) {
    const image = document.createElement("img");
    const src = mark === "x" ? X_IMAGE_URL : O_IMAGE_URL;
    image.src = src;
    box.appendChild(image);
    box.removeEventListener("click", changeToX);
    const id = parseInt(box.dataset.id);
    boxSpaces[id] = mark;
}

function isGameOver() {
    const length = emptyBoxes.length;

    if (length <= 0) {
        declareWinner();
        return true;
    } else {
        false;
    }
}

function declareWinner() {
    const result = "";
    if (boxSpaces["0"] === boxSpaces["1"] && boxSpaces["1"] === boxSpaces["2"]) {
        result = boxSpaces["0"];
        console.log(result);
    }

    return result;
}

1 Ответ

0 голосов
/ 05 июля 2019

Вы используете const для объявления переменной, и вы пытаетесь обновить ее, что невозможно.измените его на let или var

function declareWinner() {
  let result = ""; //change it to let or var
  if (boxSpaces["0"] === boxSpaces["1"] && boxSpaces["1"] === boxSpaces["2"]) {
    result = boxSpaces["0"];
    console.log(result);
  }

  return result;
}
...