Показать сообщение отдельно
  #1 (permalink)  
Старый 01.03.2018, 00:48
Новичок на форуме
Отправить личное сообщение для Shter Посмотреть профиль Найти все сообщения от Shter
 
Регистрация: 01.03.2018
Сообщений: 2

Помогите понять
Прошу помощи как новичок в этом не легком деле. Кто-нибудь мне объяснит почему в функции deleteCity не происходит удаление эл. массива?
Если кому не ясно, поясню: это игра аля города, после каждого ответа игрока либо компаб должен удалятся названный город из массива list.


let list = ['Ahmedabad', 'Damascus', 'Delhi', 'Izmir', 'Innsbruck', 'Kawasaki', 'Karachi', 'Islamabad', 'Dalian', 'Nanjing', 'Glasgow', 'Wuhan', 'Naples', 'Sydney', 'Yangon', 'Rome', 'Yerevan', 'Esfahan', 'Eilat', 'Tabriz', 'Zibo', 'Oslo', 'Odessa', 'Anshan', 'Adana'],

    firstArrSize = () => {
        firstArrSize = list.length;
        player(firstArrSize)
    },

    player = (firstArrSize) => {
        if (firstArrSize == list.length) {
            playerWord = (prompt('Назовите Ваш первый город')).toLocaleLowerCase();
            deleteCity(playerWord, bot());
        } else {
            playerWord = (prompt('Назовите Ваш город')).toLocaleLowerCase();
            deleteCity(playerWord, bot());
        }
    },

    deleteCity = (answer, func) => {
        for (i = 0; i < list.length; i++) {
            tempCity = list[i].toLocaleLowerCase();
            if (tempCity == answer) {
                list.splice(i, 1);                
                return func;
            }
        }
    }

    bot = () => {
        lastChar = playerWord.charAt(playerWord.length - 1);        
        i = 0;
        firstChar = '';
        while(firstChar !== lastChar){
            firstChar = (list[i].toLocaleLowerCase()).charAt(0);
            i++;
        };
        if(firstChar == lastChar){            
            alert(list[i-1])
            deleteCity(list[i-1], player());
        }else{
            alert('You are winner!');
        }
    }


    firstArrSize();

Последний раз редактировалось Shter, 01.03.2018 в 22:13.
Ответить с цитированием