Categories: JavaScript

JavaScript 자바스크립트 대화상자 alert, confirm, prompt

자바스크립트 대화상자란?

자바스크립트 대화상자 alert, confirm, prompt 는 사용자와 상호 작용하기 위한 다양한 방법을 제공하는 함수들입니다. 각각의 함수들은 목적과 특징이 다르며, 이 글에서 자세히 비교하겠습니다.

alert, confirm, prompt 비교

  • alert: 가장 기본적인 형태로, 메시지를 단순히 표시합니다. 반환 값은 없습니다.

  • confirm: 사용자에게 확인 또는 취소를 선택하도록 하는 대화상자를 표시하며, 선택 결과에 따라 다른 동작을 수행할 수 있습니다.
    사용자가 “확인”을 선택하면 true, “취소”를 선택하면 false를 반환합니다.

  • prompt: 사용자로부터 텍스트 입력을 받아오는 대화상자를 표시하며,
    사용자가 입력한 텍스트를 반환 받습니다.
    입력 값을 활용하여 다양한 작업을 수행할 수 있습니다.

alert, confirm, prompt 예제

alert

  • 목적: 간단한 메시지를 사용자에게 보여줍니다. 반환 값은 없습니다.
JavaScript
alert("안녕하세요!");
JavaScript

confirm

  • 목적: 사용자에게 확인 또는 취소를 선택하도록 하는 대화상자를 표시합니다.
  • 반환값: 사용자가 “확인”을 선택하면 true, “취소”를 선택하면 false를 반환합니다.
JavaScript
const userResponse = confirm("계속 진행하시겠습니까?");
if (userResponse) {
  // 사용자가 확인을 선택한 경우
  console.log("true");
} else {
  // 사용자가 취소를 선택한 경우
  console.log("false");
}
JavaScript

prompt

  • 목적: 사용자로부터 텍스트 입력을 받기 위한 대화상자를 표시합니다.
  • 반환값: 사용자가 입력한 텍스트를 반환합니다.
JavaScript
const userName = prompt("이름을 입력하세요");
if (userName) {
  alert("안녕하세요 " + userName + "님!");
} else {
  alert("이름이 입력되지 않았습니다.");
}
JavaScript

결론

alert, confirm, prompt 는 각각 다른 상황에서 사용자와의 상호 작용을 위해 특화되어 있습니다.
적절한 함수 선택은 웹 페이지나 애플리케이션의 사용자 경험을 향상 시키는데 중요합니다.
사용자의 의도에 따라 어떤 함수를 사용할지 결정하고, 반환값을 활용하여 다양한 상황에 대응하는 것이 좋습니다.

suover

Recent Posts

실용적인 테스트 가이드: @Mock, @MockBean, @Spy, @SpyBean, @InjectMocks

테스트 시 의존성 주입(Dependency Injection)과 Mockito Spring 애플리케이션을 개발하다 보면, 테스트 코드에서 실제 빈(Bean)을 사용하지…

1주 ago

실용적인 테스트 가이드: Layered Architecture 레이어드 아키텍처

들어가며 스프링 기반 프로젝트에서 좋은 설계 구조와 테스트 전략은 소프트웨어 품질과 유지보수성에 직결됩니다. 최근 학습한…

1주 ago

읽기 좋은 코드를 작성하는 사고법: 논리, 사고의 흐름과 SOLID

들어가며 코드를 작성할 때 종종 "이 로직을 어떻게 단순하고 읽기 쉽게 표현할 수 있을까?" 고민하게…

4주 ago

읽기 좋은 코드를 작성하는 사고법: 추상과 구체

들어가며 코드를 작성하다 보면 "왜 이 코드는 한눈에 이해가 안 될까?" 하는 고민을 종종 하게…

1개월 ago

HTTP 상태코드 총정리 서버-클라이언트 간 명확한 의사소통

HTTP 상태코드란 무엇인가? HTTP 상태코드(HTTP Status Code)는 서버가 클라이언트의 요청을 처리한 결과를 수치화된 코드로 나타내는…

1개월 ago

HTTP 메서드 완벽 가이드 GET, POST, PUT, PATCH, DELETE 등 총정리

HTTP란 무엇인가? HTTP(Hypertext Transfer Protocol)는 웹에서 데이터를 주고받기 위해 사용하는 응용 계층 프로토콜입니다. 우리가 브라우저에서…

1개월 ago