코딩하는 김딸기

03-1. JavaScript 내장 객체 본문

자바스크립트/Likelion_JS

03-1. JavaScript 내장 객체

김딸기* 2024. 10. 5. 02:16

객체/OOP

객체(Object)는 함수와 데이터의 집합으로, 프로그래밍에서 중요한 개념 중 하나입니다. **객체지향 프로그래밍(OOP)**은 객체를 선언하고 그 객체를 통해 코드를 작성하는 기법을 의미하며, 자바스크립트와 같은 여러 언어에서 활용됩니다.

 

객체 생성 방식 (JavaScript 기준)

자바스크립트에서 객체를 생성하는 방법은 크게 세 가지로 나눌 수 있습니다:

  1. 객체 리터럴:
    • 객체를 간단하게 정의할 수 있는 방법입니다.
    javascript
    코드 복사
    const car = { make: 'Toyota', model: 'Camry', year: 2021, start: function() { console.log('Starting the car...'); } };
  2. 함수 생성자:
    • new 키워드를 사용하여 객체를 생성합니다. 이 방식은 객체의 프로토타입을 설정할 수 있어 코드 재사용에 유리합니다.
    javascript
    코드 복사
    function Car(make, model, year) { this.make = make; this.model = model; this.year = year; this.start = function() { console.log('Starting the car...'); }; } const myCar = new Car('Toyota', 'Camry', 2021);
  3. 클래스:
    • ES6(ECMAScript 2015)부터 도입된 문법으로, 객체를 정의하는 더 직관적인 방법입니다.
    javascript
    코드 복사
    class Car { constructor(make, model, year) { this.make = make; this.model = model; this.year = year; } start() { console.log('Starting the car...'); } } const myCar = new Car('Toyota', 'Camry', 2021);

내장 객체

내장 객체는 자바스크립트나 브라우저 환경에서 기본적으로 제공되는 객체들입니다. 개발자는 이러한 객체를 활용하여 프로그램을 효율적으로 작성할 수 있습니다.

  • 내장 객체 예시:
    • Array: 여러 데이터를 배열 형태로 관리할 수 있는 객체입니다.
    • Date: 날짜와 시간을 관리하기 위한 객체입니다.
    • Math: 수학 관련 작업을 지원하는 객체입니다.
    • JSON: 자바스크립트 객체를 JSON 문자열로 변환하거나 JSON 문자열을 객체로 변환하는 데 사용됩니다.

배열(Array)

배열은 여러 개의 데이터를 하나의 변수로 관리하기 위한 데이터 구조입니다. 자바스크립트에서 배열은 Array 타입의 객체로, 다양한 메소드와 속성을 제공합니다.

  • 배열 생성:
    1. **대괄호([])**를 사용하여 배열을 생성할 수 있습니다.
    javascript
    코드 복사
    const fruits = ['apple', 'banana', 'cherry'];
    1. Array 생성자를 사용하여 생성할 수 있습니다.
    javascript
    코드 복사
    const fruits = new Array('apple', 'banana', 'cherry');
  • 배열 메소드:
    • length: 배열의 요소 개수를 반환합니다.
    javascript
    코드 복사
    console.log(fruits.length); // 3
    • 데이터 획득: 배열 요소는 인덱스를 통해 접근할 수 있습니다.
    javascript
    코드 복사
    console.log(fruits[0]); // 'apple'
    • 데이터 추가:
      • push(): 배열의 끝에 요소를 추가합니다.
      • unshift(): 배열의 시작에 요소를 추가합니다.
    • 데이터 삭제:
      • pop(): 배열의 마지막 요소를 제거합니다.
      • shift(): 배열의 첫 요소를 제거합니다.
    • splice(): 특정 위치에서 요소를 추가하거나 제거하는 데 사용됩니다.
    javascript
    코드 복사
    fruits.splice(1, 1, 'orange'); // 인덱스 1에서 'banana'를 'orange'로 교체
    • slice(): 배열의 일부를 추출하여 새로운 배열을 만듭니다.
    javascript
    코드 복사
    const newFruits = fruits.slice(0, 2); // ['apple', 'orange']
    • filter(): 특정 조건에 맞는 요소만 추출합니다.
    javascript
    코드 복사
    const longFruits = fruits.filter(fruit => fruit.length > 5); // 조건에 맞는 요소만 필터링
    • map(): 배열의 모든 요소에 대해 주어진 함수를 호출하고, 그 결과로 새로운 배열을 반환합니다.
    javascript
    코드 복사
    const fruitLengths = fruits.map(fruit => fruit.length); // 각 과일의 길이를 반환
     
     

Date 객체

Date 객체는 날짜와 시간을 다루기 위해 제공되는 내장 객체입니다. 자바스크립트에서는 다양한 날짜 관련 작업을 지원하는 메소드를 제공합니다.

  • Date 객체 생성:
javascript
코드 복사
const now = new Date(); // 현재 날짜 및 시간 const specificDate = new Date('2024-10-05'); // 특정 날짜
  • 날짜/시간 추출 메소드:
    • getFullYear(): 연도를 반환합니다.
    • getMonth(): 월을 반환합니다 (0부터 시작).
    • getDate(): 일을 반환합니다.
    • getDay(): 요일을 반환합니다 (0 = 일요일).
    • getHours(), getMinutes(), getSeconds(): 각각 시, 분, 초를 반환합니다.
    • getTime(): UTC 기준으로 1970년 1월 1일부터 경과한 밀리초 값을 반환합니다.

UTC/GMT

  • UTC(협정 세계시): 전 세계에서 시간을 표현하기 위해 사용되는 기준 시간입니다. 다양한 지역의 시간을 비교할 수 있도록 도와줍니다. 예를 들어, 한국은 UTC+9:00입니다.
  • GMT(그리니치 표준시): UTC보다 이전의 시간 개념이며, 둘은 거의 동일하게 사용됩니다.

타임스탬프

타임스탬프는 특정 시점의 시간을 표현하는 방법으로, 일반적으로 UTC 기준의 1970년 1월 1일부터 경과된 밀리초 값으로 표현됩니다. 타임스탬프를 사용하면 시간의 비교 및 계산이 용이합니다.

 


Math 객체

Math 객체는 수학과 관련된 여러 가지 작업을 지원하는 내장 객체입니다. 다양한 수학 함수를 제공하여 프로그래밍에서의 계산을 쉽게 해줍니다.

  • 주요 Math 메소드:
    • Math.PI: 원주율을 반환합니다.
    • Math.abs(): 절대값을 반환합니다.
    • Math.ceil(): 주어진 숫자보다 크거나 같은 가장 작은 정수를 반환합니다.
    • Math.floor(): 주어진 숫자보다 작거나 같은 가장 큰 정수를 반환합니다.
    • Math.round(): 가장 가까운 정수로 반올림합니다.
    • Math.max(), Math.min(): 주어진 숫자 중 최대/최소값을 반환합니다.
    • Math.pow(): 주어진 숫자의 거듭제곱을 계산합니다.
    • Math.random(): 0과 1 사이의 난수를 생성합니다.

이러한 내장 객체들은 자바스크립트 프로그래밍에서 매우 유용하게 사용되며, 복잡한 작업을 간단하게 처리할 수 있게 해줍니다. 프로그래머는 이러한 객체들을 활용하여 더 효율적이고 간결한 코드를 작성할 수 있습니다.

 
 

'자바스크립트 > Likelion_JS' 카테고리의 다른 글

04-1. Object Literal  (0) 2024.10.05
03-3. document  (0) 2024.10.05
03-2. 브라우저 내장 객체  (0) 2024.10.05
02-7. Event Programming  (0) 2024.10.05
2-6. Scope 와 Hoisting  (0) 2024.10.05