JAVASCRIPT 25 Introduction To Object

 object literal syntax

property

array는 ordered data structure  순서가 중요함

object는 unordered data structure  키가 그 역할을 대신한다.

자바스크립트의 object 에 대해 알아보자!

객체(object)는 자바스크립트의 데이터 구조로써 배열과 다르게 property(특성)을 가진다.

const jonasArray = [
    'jonas',
    'Schmedtmann',
    2022 - 2001,
    'teacher',
    ['Micheal', 'Peter', 'Steven']];

위에 있는 배열과 같은 객체를 만든다면

const jonas = {
    fristName: 'jonas',
    lastName: 'Schemedtmann',
    age: 2022 - 2001,
    job: 'teacher',
    friends: ['Micheal', 'Peter', 'Steven']};

다음과 같다 배열과 다른 점은 {   } 중괄호를 사용하며 특성(property)이 존재한다.


객체를 선언 했으니 이를 꺼내는 방법에는 

dot notation

console.log(jonas.lastName);//dot notation

 점(.) 을 이용하여 특성을 찾으면 그 특성 값을 내놓게 된다. 이때 . 은 연산자로써 연산자 계산 순서가 괄호 다음으로 높다. 그리고 . 뒤에는 표현형이 오면 안된다.

bracket notation

console.log(jonas['last' + 'Name']); //bracket notaion expression okay!

이번에는 배열과 비슷하게 대괄호 안에 특성을 넣어 특성값을 찾는 방식이 있다.

이때 dot notation 과 다른 점은 표현형을 사용해도 된다는 것이다. 위의 예시 처럼 표현형이 사용 가능하면 여러가지 응용이 가능하니 주의 하자.


배열과 매우 비슷하다는 걸 알 수 있는데 배열은 a[배열의 숫자] 가 들어 갔다면 

객체는 a[특성(property)] 를 사용함을 확인 할 수 있다. 따라서 객체의 특성은 배열의 순서를 대신 한다는 걸 확인 할 수 있다.  다시 말하자면 배열은 ordered data structure 그리고 객체는 unordered data structure 이다.


만약 객체의 특성이 정의 되지 않은 걸 넣으면 어떻게 될까 바로 undefined 자료형을 내놓는다. 여기서 undefined는 falsy value 로 if/else에서 활용 가능하다. 아래 예시를 보자.

if (jonas[interestedIn]) {
    console.log(jonas[interestedIn]);
} else { console.log('Wrong request!');}

여기서 변수 interestedIn 이 jonas의 특성을 가지고 있지 않다면 undefined 자료형을 가져 

else가 실행 될 것이다. 

























댓글

이 블로그의 인기 게시물

Javascript this keyward

Javascript Object vs Primitives (Primitives vs reference type)

javascript 15 switch statement