rock paper scissors recurvsion javascript code example

Example: rock paper scissors javascript

const tolowerUcFirst = v => v.charAt(0).toUpperCase() + v.slice(1).toLowerCase()

const answer = prompt(
  'Do you want to play Rock Paper Scissors? Type yes or no!'
)

if (answer && ['Y', 'YES'].includes(answer.toUpperCase())) {
  let board = ['ROCK', 'PAPER', 'SCISSORS']
  let answer = prompt('Rock, Paper, or Scissors?')

  if (board.includes(answer.toUpperCase())) {
    let them = board[Math.floor(Math.random() * 3)]
    let you = answer.toUpperCase()

    if (them === you) {
      console.log('draw', you, them)
      alert(`Draw, they choose ${tolowerUcFirst(them)} too!`)
    } else {
      // win rules
      if (
        // SCISSORS
        (you === 'SCISSORS' && them === 'PAPER') ||
        // PAPER
        (you === 'PAPER' && them === 'ROCK') ||
        // ROCK
        (you === 'ROCK' && them === 'SCISSORS')
      ) {
        console.log('you win', you, them)
        alert(`You win, they choose ${tolowerUcFirst(them)}!`)
      } else {
        console.log('you lose', you, them)
        alert(`You lose, they choose ${tolowerUcFirst(them)}!`)
      }
    }
  }
}