[자바스크립트] 객체와 객체를 이용한 프로그램

2023. 7. 29. 00:14·JavaScript
728x90
반응형

이번 시간에는 객체에 대한 내용을 간단히 살펴보고 객체를 이용한 프로그램에 대해서 살펴보도록 하겠습니다.

객체

객체는 '복합 자료형'이라고도 표현합니다. 그 이유는 객체 안에 숫자, 문자열 등 여러 자료형이 포함되기 때문입니다. 하지만 객체도 자료형이기 때문에 자바스크립트에서는 객체는 자료를 저장하고 처리하는 기본 단위입니다.

 

프로그래밍 언어에서 객체는 여러 가지 의미로 해석할 수 있습니다. 자바스크립트에서는 프로그램에서 인식할 수 있는 모든 대상을 가리킨다는 의미로 이해하면 됩니다.

 

예를 들자면 자바스크립트는 주로 웹 사이트나 웹 애플리케이션을 프로그래밍하는 언어이기 때문에 웹 브라우저나 웹 문서와 관련된 것들을 객체로 인식합니다.

 

내장 객체

내장 객체는 프로그래밍을 할 때 자주 사용하는 요소를 미리 객체로 정의한 것입니다. 이러한 객체는 자바스크립트 표준의 일부이며 웹 개발 및 기타 응용 프로그램에서 일반적으로 사용되는 필수 기능을 제공합니다. 

 

문서 객체 모델(DOM)

객체를 사용해 웹 문서를 관리하는 방식을 문서 객체 모델이라고 합니다. 

 

HTML 또는 XML 문서의 구조를 문서의 각 요소(예: HTML 태그)가 노드이고 요소 간의 관계가 노드 간의 연결로 표현되는 트리와 같은 모델로 나타냅니다. DOM은 JavaScript 및 기타 프로그래밍 언어를 사용하여 동적으로 웹 페이지와 상호 작용하고 조작하는 방법을 제공합니다.

 

웹 페이지가 웹 브라우저에 로드되면 브라우저는 HTML 또는 XML 코드를 구문 분석하고 DOM 트리로 알려진 페이지의 계층적 표현을 생성합니다. 이 트리형 구조를 통해 개발자는 웹 페이지의 콘텐츠, 구조 및 스타일에 실시간으로 액세스하고 수정할 수 있습니다. DOM에 대한 변경 사항은 표시되는 페이지에 즉시 반영되어 대화형 및 동적 웹 애플리케이션을 생성합니다.

 

객체의 인스턴스 만들기

객체의 인스턴스를 만들 때는 new 예약어를 사용하게 됩니다. new 예약어 뒤에 프로토타입 객체 이름과 괄호( )를 쓰면 됩니다.

 

내장 객체를 이용한 프로그램

현재 날짜와 시간을 출력하는 프로그램

 

실행 결과

이 프로그램에는 제목 "현재 날짜 및 시간"을 표시하는 HTML 페이지와 자바스크립트를 사용하여 날짜 및 시간을 업데이트할 ID "currentDateTime"이 있는 빈 단락 요소가 있습니다.

 

JavaScript 코드는 'Date' 개체를 사용하여 현재 날짜와 시간을 가져오는 'displayCurrentDateTime()' 함수를 정의합니다. 그런 다음 toLocaleDateString() 메서드를 사용하여 지정된 옵션에 따라 날짜 및 시간 형식을 지정합니다. 이 경우 전체 요일 이름, 전체 월 이름 및 2자리 시, 분, 초를 표시하는 옵션을 사용합니다.

 

textContent 속성은 형식이 지정된 날짜 및 시간을 ID가 "currentDateTime"인 단락 요소의 내용으로 설정하는 데 사용됩니다.

웹 브라우저에서 HTML 파일을 열면 지정된 형식으로 현재 날짜와 시간이 표시되고 페이지가 로드되거나 새로 고쳐질 때마다 자동으로 업데이트됩니다.

 

 

이 프로그램은 HTML과 자바스크립트를 사용하여 현재 날짜와 시간을 한국어로 표시하는 간단한 웹 페이지를 생성하는 프로그램입니다.

HTML 부분과 자바스크립트 부분을 나누어서 살펴보도록 하겠습니다. 

우선 HTML 부분입니다.

  • <!DOCTYPE html>: HTML5 문서 형식을 사용한다는 것을 선언합니다.
  • <html>: HTML 문서의 시작을 나타내는 요소입니다.
  • <head>: 문서의 헤더를 정의하는 요소입니다. 웹 페이지의 제목(title)과 같은 정보들을 포함합니다.
  • <title>: 웹 페이지의 제목을 정의하는 요소입니다. 브라우저의 제목 표시줄에 나타납니다.
  • <body>: 문서의 본문을 정의하는 요소입니다. 실제 웹 페이지 내용이 여기에 위치합니다.
  • <h1>: 문서의 제목(heading)을 나타내는 요소입니다. 여기서는 "현재 날짜와 시간"이 표시됩니다.
  • <p>: 문단(paragraph)을 정의하는 요소입니다. 여기에 현재 날짜와 시간 정보가 표시됩니다.

다음으로는 자바스크립트 부분입니다.

  • displayCurrentDateTime(): 이 함수는 현재 날짜와 시간을 가져와서 웹 페이지에 표시하는 역할을 합니다.
  • const currentDate = new Date();: Date 객체를 사용하여 현재 시간을 가져옵니다.
  • const options = { ... };: toLocaleDateString() 메서드에서 사용할 날짜 및 시간 형식을 지정하는 옵션 객체를 생성합니다. 옵션으로는 요일, 년도, 월, 일, 시, 분, 초, 그리고 시간대 등이 포함되어 있습니다.
  • const formattedDate = currentDate.toLocaleDateString('ko-KR', options);: toLocaleDateString() 메서드를 사용하여 현재 날짜와 시간을 한국어로 형식화합니다. 'ko-KR'은 한국어 로케일 식별자를 의미합니다.
  • document.getElementById('currentDateTime').textContent = formattedDate;: getElementById 메서드로 id가 'currentDateTime'인 요소를 찾고, 해당 요소의 textContent 속성을 형식화된 날짜와 시간으로 설정하여 웹 페이지에 표시합니다.

이렇게 프로그램이 실행되면 웹 페이지의 내용이 실행결과 이미지처럼 "현재 날짜와 시간"이라는 제목과 함께 현재 시간이 한국어로 표시됩니다. 페이지를 새로 고침하면 실시간으로 업데이트되어 항상 최신 시간을 보여줍니다.

 

감사합니다.


틀린 부분이 있거나 더 좋은 내용 훈수 환영합니다!

공감과 댓글 부탁드립니다.

728x90
반응형

'JavaScript' 카테고리의 다른 글

[자바스크립트] Array 객체의 함수 (1)  (0) 2023.08.02
[자바스크립트] 배열, Array 객체  (0) 2023.07.30
[자바스크립트] 익명 함수, 즉시 실행 함수, 화살표 함수  (0) 2023.07.25
[자바스크립트] let과 constant  (0) 2023.07.24
[자바스크립트] 함수와 함수를 이용한 프로그램  (0) 2023.07.20
'JavaScript' 카테고리의 다른 글
  • [자바스크립트] Array 객체의 함수 (1)
  • [자바스크립트] 배열, Array 객체
  • [자바스크립트] 익명 함수, 즉시 실행 함수, 화살표 함수
  • [자바스크립트] let과 constant
P_Piano
P_Piano
Apple 생태계 개발자가 되기 위한 학습과 경험의 기록
    반응형
    250x250
  • P_Piano
    피피아노의 개발 일지
    P_Piano
  • 전체
    오늘
    어제
    • 분류 전체보기 (201)
      • Apple (119)
        • iOS (22)
        • visionOS (4)
        • Swift (65)
        • UIKit (2)
        • SwiftUI (20)
        • RxSwift (2)
        • Xcode (4)
      • C언어 (5)
      • C++ (8)
      • Dart (1)
      • Python (3)
      • JavaScript (17)
      • Git (1)
      • CS (39)
        • 디자인 패턴 (6)
        • 네트워크 (20)
        • 운영체제 (8)
        • Database (5)
        • 자료구조 (0)
      • IT 지식 (2)
      • IT 뉴스 (4)
      • 출처 표기 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    스위프트
    운영체제
    Optional
    combine
    visionOS
    ios
    변수
    프로퍼티 래퍼
    자바스크립트
    디자인패턴
    코딩테스트
    SWIFT
    연산자
    티스토리챌린지
    오블완
    UIKit
    swiftUI
    Initializers
    함수
    Vision Pro
    옵셔널
    제어문
    네트워크
    메서드
    프로세스
    클래스
    배열
    Xcode
    이니셜라이저
    비동기
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
P_Piano
[자바스크립트] 객체와 객체를 이용한 프로그램
상단으로

티스토리툴바