다른 함수 내에서 함수가 5 번 반복되도록하려면 어떻게해야합니까? (가위 바위 보)

rueeazy

저는 가위 바위 보 게임의 스크립트를 만들고 있으며 여기에 "Rock, Paper 또는 Scissors"를 무작위로 반환하는 컴퓨터가 있습니다.

function computerPlay() {
      let computerOption = ['Rock', 'Paper', 'Scissors']
      return computerOption[Math.floor(Math.random() * computerOption.length)];
} 

그리고 나는 여기에서 나를 상대로 플레이 할 컴퓨터를 얻었다 (만약 내가 계속 '록'을 선택했다면)

function playRound(playerSelection, computerSelection) {
      if (computerSelection == 'Paper') {
         return 'You lose! Paper beats Rock!';
      } else if (computerSelection == 'Rock') {
         return 'You tied! Nobody wins.';
      } else {  
          return 'You win! Rock beats Scissors!';
      } 
}
const playerSelection = 'Rock'
const computerSelection = computerPlay()
console.log(playRound(playerSelection, computerSelection))

내가 어려움을 겪고있는 부분은 새로운 함수 game ()에서 컴퓨터가 5 번 연속으로 플레이하도록하는 함수를 만드는 것입니다. 나는 아직 루핑을 배우지 않았고, TOP을 통해 배우고 있으며 그들은 내 playRound () 함수를 연속 5 번 사용하고 매 게임 후 결과를 console.log하는 것이 좋습니다.

function game() {
      playRound(playerSelection, computerSelection)
      console.log(playRound(playerSelection, computerSelection));
      playRound(playerSelection, computerSelection)
      console.log(playRound(playerSelection, computerSelection));
      playRound(playerSelection, computerSelection)
      console.log(playRound(playerSelection, computerSelection));
      playRound(playerSelection, computerSelection)
      console.log(playRound(playerSelection, computerSelection));
      playRound(playerSelection, computerSelection)
      console.log(playRound(playerSelection, computerSelection));
}

game () 함수를 호출하면 console.log가 계속해서 같은 값을 5 번 반환하므로 게임을 한 번만 실행하고 결과를 5 번만 표시하는 것 같습니다. 게임을 실제로 5 번 실행할 수 있도록 도와 주시면 감사하겠습니다.

확실한 성능

를 생성 computerSelection 내부playRound 새로운 임의 컴퓨터 선택은 각 게임에 생성 그래서, 기능 :

function computerPlay() {
  let computerOption = ['Rock', 'Paper', 'Scissors']
  return computerOption[Math.floor(Math.random() * computerOption.length)];
}

function playRound() {
  const playerSelection = 'Rock'
  const computerSelection = computerPlay()
  if (computerSelection == 'Paper') {
    return 'You lose! Paper beats Rock!';
  } else if (computerSelection == 'Rock') {
    return 'You tied! Nobody wins.';
  } else {
    return 'You win! Rock beats Scissors!';
  }
}

function game() {
  for (let i = 0; i < 5; i++) {
    console.log(playRound());
  }
}

game();

또는 다음을 사용하는 저렴한 대화 형 버전의 경우 prompt:

const choices = ['Rock', 'Paper', 'Scissors'];
function computerPlay() {
  return choices[Math.floor(Math.random() * choices.length)];
}

function playRound() {
  let playerSelection;
  while (!choices.includes(playerSelection)) {
    playerSelection = prompt('Rock, Paper, or Scissors?');
    if (playerSelection === null) {
      throw new Error('exiting');
    }
  }
  const computerSelection = computerPlay()
  if (computerSelection == 'Paper') {
    return 'You lose! Paper beats Rock!';
  } else if (computerSelection == 'Rock') {
    return 'You tied! Nobody wins.';
  } else {
    return 'You win! Rock beats Scissors!';
  }
}

const delay = ms => new Promise(res => setTimeout(res, ms));
async function game() {
  for (let i = 0; i < 5; i++) {
    console.log(playRound());
    await delay(50); // give Stack Snippet console time to render
  }
}

game();

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

다른 컨트롤러에서 함수를 실행하여 범위가 각도로 업데이트되도록하려면 어떻게해야합니까?

분류에서Dev

순위 함수가 동일한 순위의 행에 다른 값을 할당하도록하려면 어떻게해야합니까?

분류에서Dev

함수가 올바른 순서를 따르도록하려면 어떻게해야합니까?

분류에서Dev

첫 번째 PHP 함수에서 예외가 발생하면 두 번째 PHP 함수가 구현되지 않도록하려면 어떻게해야합니까?

분류에서Dev

변수가 하나 인 ggplot2의 상자 그림에 분위수 함수의 5 개 분위수를 추가하려면 어떻게해야합니까?

분류에서Dev

두 개의 다른 함수에서 "참인 경우"결과를 가져 와서 세 번째 함수에서 사용하려면 어떻게해야합니까?

분류에서Dev

포함 된 보고서가 다른 요소 위에 렌더링되지 않도록하려면 어떻게합니까?

분류에서Dev

PHP는 창 위로 마우스를 이동할 때 자바 스크립트를 실행합니다. 함수에서 반복됩니다. 한 번만 실행하려면 어떻게해야합니까?

분류에서Dev

함수가 for 루프 내에서 여러 값을 반환하도록하려면 어떻게해야합니까? (초보자)

분류에서Dev

Python-함수 내에서 사용되는 변수가 반복 값을 갖도록하려면 어떻게해야합니까?

분류에서Dev

조회 수식에 날짜 범위 조건도 포함되도록하려면 어떻게해야합니까?

분류에서Dev

벡터 길이가 일치하도록 map2 함수 (purrr) 내에서 열을 하위 집합하려면 어떻게해야합니까?

분류에서Dev

내 함수가 TypeError를 던지지 않고 다른 인수 외에도 부동 소수점을 취하도록하려면 어떻게해야합니까?

분류에서Dev

그리드보기가 단일 열 셀에 여러 값 (값 수는 다양 함)을 표시하도록하려면 어떻게해야합니까?

분류에서Dev

함수가 호출 될 때마다 함수의 호출 위치에 액세스하려면 어떻게해야합니까?

분류에서Dev

함수를 실행하기 전에 다른 함수가 완료 될 때까지 기다리도록하려면 어떻게해야합니까?

분류에서Dev

내 단위 테스트에서 컨트롤러 컨텍스트를 모의하여 문자열 함수에 대한 부분보기가 작동하도록하려면 어떻게해야합니까?

분류에서Dev

Delphi가 hpp 파일에서 함수 및 프로 시저 정의를 내보내도록하려면 어떻게해야합니까?

분류에서Dev

도우미 함수에서보기 위해 컨트롤러에서 전달 된 변수에 액세스하려면 어떻게해야합니까?

분류에서Dev

내 주 DNS가 다른 서버보다 우선하도록하려면 어떻게해야합니까?

분류에서Dev

한 요소가 다른 요소를 다룹니다. 요소가 숨겨 지거나 / 가려 지거나 / 보이지 않도록 전면 / 위에 표시되도록 설정하려면 어떻게해야합니까?

분류에서Dev

내 자바 스크립트 함수가 head 태그 내에서 작동하도록하려면 어떻게해야합니까?

분류에서Dev

다른 양식에서 하위 양식을 포함 해제하려면 어떻게해야합니까?

분류에서Dev

Cj가 tmux 명령 줄에서 줄 바꿈을 보내도록하려면 어떻게해야합니까?

분류에서Dev

JavaScript-다른 파일의 함수를 클래스에 추가하려면 어떻게해야합니까?

분류에서Dev

내 함수가 특정 줄에서 실행을 중지하도록하려면 어떻게해야합니까?

분류에서Dev

AngularJS에서 하나의 팩토리 함수가 다른 것을 참조하도록하려면 어떻게해야합니까?

분류에서Dev

Django의 함수 기반보기 내에서 코드 반복을 피하려면 어떻게해야합니까?

분류에서Dev

실수로 파일을 삭제하고 다른 위치에 다시 추가 한 후 git 기록을 수정하려면 어떻게해야합니까?

Related 관련 기사

  1. 1

    다른 컨트롤러에서 함수를 실행하여 범위가 각도로 업데이트되도록하려면 어떻게해야합니까?

  2. 2

    순위 함수가 동일한 순위의 행에 다른 값을 할당하도록하려면 어떻게해야합니까?

  3. 3

    함수가 올바른 순서를 따르도록하려면 어떻게해야합니까?

  4. 4

    첫 번째 PHP 함수에서 예외가 발생하면 두 번째 PHP 함수가 구현되지 않도록하려면 어떻게해야합니까?

  5. 5

    변수가 하나 인 ggplot2의 상자 그림에 분위수 함수의 5 개 분위수를 추가하려면 어떻게해야합니까?

  6. 6

    두 개의 다른 함수에서 "참인 경우"결과를 가져 와서 세 번째 함수에서 사용하려면 어떻게해야합니까?

  7. 7

    포함 된 보고서가 다른 요소 위에 렌더링되지 않도록하려면 어떻게합니까?

  8. 8

    PHP는 창 위로 마우스를 이동할 때 자바 스크립트를 실행합니다. 함수에서 반복됩니다. 한 번만 실행하려면 어떻게해야합니까?

  9. 9

    함수가 for 루프 내에서 여러 값을 반환하도록하려면 어떻게해야합니까? (초보자)

  10. 10

    Python-함수 내에서 사용되는 변수가 반복 값을 갖도록하려면 어떻게해야합니까?

  11. 11

    조회 수식에 날짜 범위 조건도 포함되도록하려면 어떻게해야합니까?

  12. 12

    벡터 길이가 일치하도록 map2 함수 (purrr) 내에서 열을 하위 집합하려면 어떻게해야합니까?

  13. 13

    내 함수가 TypeError를 던지지 않고 다른 인수 외에도 부동 소수점을 취하도록하려면 어떻게해야합니까?

  14. 14

    그리드보기가 단일 열 셀에 여러 값 (값 수는 다양 함)을 표시하도록하려면 어떻게해야합니까?

  15. 15

    함수가 호출 될 때마다 함수의 호출 위치에 액세스하려면 어떻게해야합니까?

  16. 16

    함수를 실행하기 전에 다른 함수가 완료 될 때까지 기다리도록하려면 어떻게해야합니까?

  17. 17

    내 단위 테스트에서 컨트롤러 컨텍스트를 모의하여 문자열 함수에 대한 부분보기가 작동하도록하려면 어떻게해야합니까?

  18. 18

    Delphi가 hpp 파일에서 함수 및 프로 시저 정의를 내보내도록하려면 어떻게해야합니까?

  19. 19

    도우미 함수에서보기 위해 컨트롤러에서 전달 된 변수에 액세스하려면 어떻게해야합니까?

  20. 20

    내 주 DNS가 다른 서버보다 우선하도록하려면 어떻게해야합니까?

  21. 21

    한 요소가 다른 요소를 다룹니다. 요소가 숨겨 지거나 / 가려 지거나 / 보이지 않도록 전면 / 위에 표시되도록 설정하려면 어떻게해야합니까?

  22. 22

    내 자바 스크립트 함수가 head 태그 내에서 작동하도록하려면 어떻게해야합니까?

  23. 23

    다른 양식에서 하위 양식을 포함 해제하려면 어떻게해야합니까?

  24. 24

    Cj가 tmux 명령 줄에서 줄 바꿈을 보내도록하려면 어떻게해야합니까?

  25. 25

    JavaScript-다른 파일의 함수를 클래스에 추가하려면 어떻게해야합니까?

  26. 26

    내 함수가 특정 줄에서 실행을 중지하도록하려면 어떻게해야합니까?

  27. 27

    AngularJS에서 하나의 팩토리 함수가 다른 것을 참조하도록하려면 어떻게해야합니까?

  28. 28

    Django의 함수 기반보기 내에서 코드 반복을 피하려면 어떻게해야합니까?

  29. 29

    실수로 파일을 삭제하고 다른 위치에 다시 추가 한 후 git 기록을 수정하려면 어떻게해야합니까?

뜨겁다태그

보관