JavaScript - Как выдержать сравнение если 2 индекса от множества?

Я пытаюсь узнать о JavaScript, и я пытаюсь создать основную игру сравнения, куда я помещаю номера карты во множество, я называю 2 из них беспорядочно, и я хочу выдержать сравнение, какое из 2 случайных требований имеет более высокую стоимость?Please help me. Мне удалось закодировать программу к картам соглашения 2 наугад, мне просто нужно руководство о том, как сравнить эти 2 оттянутые карты.

Спасибо.

{
// This is my attempt to create a basic game for a simplified version of ta siau
//where players choose a card, and compares it with dealer's card. Bigger card wins the round

var cards = [2,3,4,5,6,7,8,9,10,"jack","queen","king","ace"]; //available cards in the deck
confirm("start game now?");

var playerCard = cards[Math.floor(Math.random() * cards.length)]; //choose a random card for player

console.log(playerCard);

var dealerCard = cards[Math.floor(Math.random() * cards.length)]; //choose a random card for dealer

console.log(dealerCard);
}
0
nl ja de
@F4r-20 - своего рода заказ... хм.. как насчет положения во множестве;)
добавлено автор Jamiec, источник
Кевин будет вы принимать один из этих ответов. Также NB вы didn' t определяют то, что происходит, когда карты - то же самое, так мог бы хотеть заменить игрока> дилер с игрок> = дилер , если игрок побеждает если it' s ничья
добавлено автор Popnoodles, источник

4 ответы

Попробуйте это:

if (cards.indexOf(playerCard) > cards.indexOf(dealerCard)) {
   alert("Player wins!");
}
else {
   alert("Dealer wins");
}
4
добавлено
Это требует линейного поиска каждого множества. They' ре не очень долго, в этом случае, но it' s больше работы, чем необходимый. Ценности индекса были явно вычислены, таким образом, вместо этого сами индексы могут быть сравнены.
добавлено автор Pointy, источник
indexof имеет больше смысла начиная с других людей haven' t замеченное "гнездо", "королева", "король", "туз" - not' t числа
добавлено автор Popnoodles, источник

В чем проблема?

var playerVal=Math.floor(Math.random() * cards.length);
var playerCard = cards[playerVal];

var dealerVal=Math.floor(Math.random() * cards.length);
var dealerCard = cards[dealerVal]; 

        if(playerVal>dealerVal){
        //player wins
    }

карты отдельные.

2
добавлено
если ("2"> "король") ?
добавлено автор George, источник
Что происходит, когда карта первоклассная, гнездо, королева? Этот won' t работа. Ценности множества должны будут быть subsituted.
добавлено автор Darren Davies, источник
Вы "редактируете" входные данные, вместо обеспеченных карт использовал его индексы.
добавлено автор Толя, источник
Жаль мое ложное. Я отредактировал к правильной версии
добавлено автор Norbert Pisz, источник
хороший редактируют. собирался предложить это.
добавлено автор tkone, источник

You should work on improving your accept rate, but the primary way you check values against other values is with if

if(playerCard === dealerCard){
    console.log('cards are the same');
} else {
    console.log('cards are different');
}

Отметьте === . На большинстве языков программирования вы проверяете условные предложения, используя == . В JavaScript можно сделать это, но странные вещи как [] == ложный оценят к истинному. === требует строгого соблюдения, таким образом [] === ложный , действительно, ложное.

0
добавлено

Необходимо управлять параметрами плат

var playerCardIndex = Math.floor(Math.random() * cards.length)
    var playerCard = cards[playerCardIndex];

    var dealerCardIndex = Math.floor(Math.random() * cards.length)
    var dealerCard = cards[dealerCardIndex]

    if (playerCardIndex > dealerCardIndex) {...}
0
добавлено
JavaScript Jobs — чат
JavaScript Jobs — чат
8 336 участник(ов)

JavaScript Jobs — чат для поиска работы и людей Правила оформления: https://teletype.in/@telegram-ru/r1WQe5F1m См. также: @mobile_jobs, @devops_jobs, @nodejs_jobs, @react_js, @angular_ru, @js_ru

JavaScript.ru
JavaScript.ru
7 932 участник(ов)

Сообщество сайта JavaScript.ru в Slack.

pro.js
pro.js
4 675 участник(ов)

Про JavaScript и NodeJS Invite: https://t.me/joinchat/Be4rsT5Rsgq30DHutjxXgA Правила: http://telegra.ph/ru-chat-rules-06-19 Вакансии только с ЗП, не чаще раза в неделю.

JavaScript — русскоговорящее сообщество
JavaScript — русскоговорящее сообщество
3 269 участник(ов)

Рекомендуем сразу отключить уведомления Правила: https://rudevs.network/ByaMH6un7 См. также: @js_noobs_ru, @nodejs_ru, @typescript_ru, @react_js, @electron_ru Вакансии и поиск работы: @javascript_jobs

JavaScript Noobs — сообщество новичков
JavaScript Noobs — сообщество новичков
2 484 участник(ов)

Чат для новичков

javascript_ru
javascript_ru
915 участник(ов)

Сообщество любителей самого популярного языка программирования в мире. Чат основан в 2009 году. Логи: https://goo.gl/9EOeM7 Поддержка бота: @chat_linker (ссылка на репу внутри) Вам будут интересны @frontend_ru и @css_ru

jsChat
jsChat
603 участник(ов)

Чат посвященный программированию на языке javaScript Перед отправкой ссылки на Ваш контент посоветуйтесь с админом Все ссылки удаляются ботом автоматически

JavaScript for Zombies Chat
JavaScript for Zombies Chat
492 участник(ов)

Чат про JavaScript для настоящих zombie! Вход строго по приглашениям! Ссылка для строгих приглашений: https://t.me/joinchat/AAMBHz3Uyr0tuZ7VaB029g

All That JS
All That JS
417 участник(ов)

JS на русском