Есть ли способ сделать 3 случая на этом коде? - PullRequest
0 голосов
/ 05 августа 2020

Я создал бота Discord и попросил помочь с этим кодом на сервере Discord. Они рекомендовали спрашивать здесь.

Это исходный код

    if(msg.content.toLowerCase() === "yandev, buy something"){
    var Patreon = Math.random();
        if (Patreon > 0.5)
       {
             msg.channel.send('image link');
             msg.channel.send('Just bought this with my patreon money.');

       }
        else
        {
             msg.channel.send('image link');
             msg.channel.send('Just bought 3 of these with my patreon money.')
        }

})

Вот код, который я сделал с помощью разногласий

    if(msg.content.toLowerCase() === "yandev, buy something"){
    var Patreon = Math.random();
        if (Patreon > 0.5)
       {
             msg.channel.send('image link');
             msg.channel.send('Just bought this with my patreon money.');

       }
        else
        {
             msg.channel.send('image link');
             msg.channel.send('Just bought 3 of these with my patreon money.')
        }
        else if
        {
             msg.channel.send('image link')
             msg.channel.send('Just bought this with my patreon money.')
        }
})  

Оба эти дают ту же ошибку:

                else if
                ^^^^

SyntaxError: Unexpected token 'else'
                else
                ^^^^

SyntaxError: Unexpected token 'else'

Я пытался исправить это сам, но не могу найти способ сделать это. Итак, теперь я здесь. Спасибо.

Ответы [ 2 ]

0 голосов
/ 05 августа 2020

Откуда закрывающая скобка внизу? Из кода, предоставленного в первом блоке, это должно быть.

   if(msg.content.toLowerCase() === "yandev, buy something"){
    var Patreon = Math.random();
        if (Patreon > 0.5)
       {
             msg.channel.send('image link');
             msg.channel.send('Just bought this with my patreon money.');

       }
        else
        {
             msg.channel.send('image link');
             msg.channel.send('Just bought 3 of these with my patreon money.')
        }

}

Второй блок кода на самом деле не имеет смысла, потому что ваш else if не имеет условия.

Попробуйте удалить ') 'в последней строке первого блока и посмотрите, работает ли он.

0 голосов
/ 05 августа 2020

Вам нужно поменять местами else и else if. Порядок всегда должен быть if -> else if -> else. Вам также не хватает условия в вашем else if.

Это имеет смысл, поскольку последний else будет охватывать все условия, которые вы явно не проверяли.

...