Chapter07 표준 내장 객체

Jimin·2022년 10월 11일
0
post-thumbnail

기본 자료형과 객체 자료형의 차이

자바스크립트의 자료형

자바스크립트에서는 여섯 가지 자료형을 제공한다.
→ 숫자, 문자열, 불, 함수, 객체, undefined

기본자료형

  • 숫자
  • 문자열

객체와 기본 자료형의 차이점

→ 기본 자료형은 객체가 아니므로 속성과 메서드를 추가할 수 없다.

프로토타입

그러나, 기본 자료형 또한 속성 또는 메서드를 추가할 수 있다.
→ 프로토타입이라는 특별한 객체를 사용하면 된다.

프로토타입은 모든 객체가 가져야 하는 속성과 메서드를 정의할 수 있는 특별한 공간이다.

// 변수를 생성한다.
let primitiveNumber = 273;

// 메서드를 추가한다.
Number.prototype.method = function () {
  return 'Primitive Method';
};

// 메서드를 실행한다.
console.log(primitiveNumber.method());

// >> 실행결과
Primitive Method

Number 객체

숫자 생성

let numberFromLiteral = 273;
let numberFromConstructor = new Number(273);

메소드

Number 객체가 가진 메소드의 종류는 다음과 같다.

메소드설명
toExponential()숫자를 지수 표시로 나타낸 문자열을 리턴한다.
toFixed()숫자를 고정소수점 표시로 나타낸 문자열을 리턴한다.
toPrecision()숫자를 길이에 따라 지수 표시 또는 고정소수점 표시로 나타낸 문자열을 리턴한다.

String 객체

String 객체는 자바스크립트에서 가장 많이 사용하는 내장 객체이다.
다음 두 가지 방법으로 생성한다.

String 객체 생성

let stringFromLiteral = '안녕하세요';
let stringFromConstructor = new String('안녕하세요');

속성과 메소드

속성설명
length문자열의 길이를 나타낸다.

비파괴적 메소드와 파괴적 메소드

비파괴적 메소드

자신을 호출하는 객체의 내용을 변화시키는 메소드

파괴적 메소드

객체의 내용을 변화시키지 않고 리턴하는 메소드

메소드 체이닝(Method Chaining)

메소드를 줄줄이 연결해서 사용한다.

메소드 활용

문자열 포함: indexOf()

문자열에 특정 문자열이 있는지 확인할 때는 indexOf() 메소드를 사용한다.

매개변수로 받은 문자열이 포함된 부분의 위치를 리턴한다.
매개변수로 받은 문자열이 포함되어 있지 않을 때 → -1 리턴
⇒ 리턴된 값이 0보다 큰지 확인하면 문자열 내부에 특정 문자열이 있는지 확인할 수 있다.

문자열 분해: split()

split() 메소드를 사용하면 특정한 기호를 기반으로 문자열을 분해할 수 있다.


Date 객체

Data 객체 생성 방법

클래스설명
new Date()현재 시간으로 Date 객체를 생성한다.
new Date(유닉스_타임)유닉스 타임으로 Date객체를 생성한다.
new Date(시간_문자열)문자열로 Data객체를 생성한다.
new Date(연, 월, -1, 일, 시간, 분, 초, 밀리초)시간 요소를 기반으로 Date 객체를 생성한다.

메소드 활용

Date 객체는 getXX() 형태의 메소드만 가진다.
이 때, XX에 들어갈 수 있는 문자는 FullYear, Month , Day , Hours , Minutes , Seconds , ... 이다.


Array 객체

Array 객체의 기본 메서드

Array 객체의 기본 메소드는 다음과 같다.
다음의 메소드는 모든 플랫폼(Node.js, 웹 브라우저 등)에서 사용할 수 있다.

메소드설명
concat()매개 변수로 입력한 배열의 요소를 모두 합쳐 배열을 만들어 리턴한다.
join()배열 안의 모든 요소를 문자열로 만들어 리턴한다.
pop()*배열의 마지막 요소를 제거하고 리턴한다.
push()*배열의 마지막 부분에 새로운 요소를 추가한다.
reverse()*배열의 요소의 순서를 뒤집는다.
slice()배열 요소의 지정한 부분을 리턴한다.
sort()*배열의 요소를 정렬한다.
splice()*배열 요소의 지정한 부분을 삭제하고 삭제한 요소를 리턴한다.

* 표시된 메소드는 자기 자신을 변화시킨다.

배열 정렬

sort() 메소드는 단순한 배열일 때는 그냥 사용하지만,
객체 내부에 있는 특정한 값으로 정렬하고 싶을 때는 매개 변수에 함수를 넣고, 대소를 비교한다.

  • -1 : 앞의 것이 더 작다.
  • 0 : 같다.
  • 1 : 앞의 것이 더 크다.

콜백함수와 함께 사용하는 메서드

메소드설명
forEach()배열의 요소를 하나씩 뽑아 반복을 돌린다.
map()콜백 함수에서 리턴하는 것을 기반으로 새로운 배열을 만든다.
filter()콜백 함수에서 true를 리턴하는 것으로 새로운 배열을 만들어 리턴한다.

조금 더 나아가기

JSON 객체

JavaScript Object Notation의 약어로,
자바스크립트 객체를 사용한 데이터 표현 방법이다.

JSON 객체 사용의 제약

  • 문자열은 큰따옴표로 만들어야한다.
  • 모든 키는 큰따옴표로 감싸야한다.
  • 숫자, 문자열, 불 자료형만 사용할 수 있다.

JSON 객체의 메소드

메소드설명
JSON.stringify(객체, 변환함수, 공백개수)자바스크립트 객체를 문자로 만든다.
JSON.parse(문자열)문자열을 자바스크립트 객체로 파싱한다.
profile
https://github.com/Dingadung

0개의 댓글