@Adsdasus

Условие не работает и мне пишут «Unexpected indentifier»?

Я хотел на сайте игры собрать все возможные активности из списка игроков(она даётся за определённую активность на сайте). Кому интересно - игра про пиксельных котиков(и одна переменная из-за этого приняла такое имя).

У меня есть нужный массив, и он находится по длинному, зато достоверному пути. Каждый элемент в массиве имеет название той или иной активности. А разнообразия активностей там много, поэтому мне в падлу писать массив из строчных эелементов, тем более когда там строка не пишет true при её сравнении с индентичной активностью.

Код работает следующим образом: Функция FindActivity перебирает все элементы в массиве из игроков на одной странице(20 штук на одной странице). В самом цикле появляется ещё один цикл, с отдельной переменной k, который перебирает все возможные активности из массива элементов.

Проблема состоит в том, что у меня не работает условие по абсолютно непонятным причинам: что бы я там не писал, в любом случае пишет Unexpected indentifier <имя любой вставленной переменной>. Может быть, я пропустил что-то?

И если возникнут вопросы, пробовал ли я "разобрать" функцию и проверить верность условия - да, я пробовал. Но условие работает как обычно, и никакой ошибки там не может быть(как мне кажется). Магия происходит когда я её обёртываю в массив массивов.
P. S
Там у меня чаще всего возникают аномальные ошибки, и у меня могло выполнится условие даже если напишу "if false{...}"

let allStats = []; //Массив из всех активностей
let statsCount = []; //Массив для подсчёта котов с той или активностью с таким же порядком, что и allStats
let catu; //Буфер
let debuga;
let found = false; //Условие, если из allStats не найдут подходящий текст

function FindActivity () {
    for(let i=0;i<20;i++) {
        catu = document.getElementsByClassName('pol1')[i].parentElement.parentElement.childNodes[2].firstChild; //Находим по 100% верному адресу
        
        for(let k=0;k<allStats.length-1;k++) {
            if catu == allStats[k] { //А здесь проблемка: рисует ошибку
                found = true; 
                statsCount[k] += 1;
                break;
            }
        }

        if !found {
            allStats[allStats.length] = catu;
            statsCount[statsCount.length] = 1;
        } else {
            found = false;
        }
        
    }
}
  • Вопрос задан
  • 44 просмотра
Решения вопроса 1
VoidVolker
@VoidVolker Куратор тега JavaScript
Разработчик ПО и IT-инженер
Ошибка синтаксиса же. Мануал читать внимательнее надо: https://www.w3schools.com/js/js_if_else.asp
Тут любая нормальная IDE должна сразу показать её. Не показывает - меняйте IDE/редактор исходного кода на нормальный.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы