개발공작소
728x90
반응형

 

 

 

 

오늘 동기랑 이야기를 하는데, javascript의 객체와 배열에 대한 이야기가 나왔다.
이러한 상황에서 객체를 쓰는게 좋냐, 배열을 쓰는게 좋냐 라는 이야기였는데
뭔가 개발을 하면서 느낌은 오는데, 막상 입으로 하려니 바로바로 안나오는 상황이.. 그래서 한번 정리해본다.

 

 

배열(Array) vs 객체(Object) 어떤 걸 사용하는 게 좋을까?

 

우선 배열과 객체의 차이점에 대해 간단히만 알아보자. ( 진짜 간단히만.. )

 

 

배열(Array)와 객체(Object)의 차이

 

우선 배열은 key와 value로 이루어지지 않은 나열 된 값을 의미한다.
물론 key와 value를 이룰수는 있지만, 좋은 방법은 아니기 때문에, 특정한 상황을 빼면 사용되지 않는다..

// 배열 arr을 선언
var arr = [1,2,3,4,5];
undefined

// arr 추출
arr
= (5) [1, 2, 3, 4, 5]

// arr에서 0번째에 있는 값 추출
arr[0]
= 1

// arr에서 4번째에 있는 값 추출
arr[4]
= 5

 

 

그렇다면 객체는 어떨까? 기본적으로 key와 value가 한쌍을 이루어진 값을 이룬다.
그렇기 때문에 key나 value로 특정값을 추출하는 등 용의하다.

// 객체 obj 선언
var obj = {
    'a' : 'a_value',
    'b' : 'b_value'
};
undefined

// obj
obj
= {a: 'a_value', b: 'b_value'}

// obj에서 key값이 a인 value를 추출
obj.a
= 'a_value'

// obj에서 key값이 b인 value를 추출
obj.b
= 'b_value'

 

대충 위에 나온 차이점만 봐도 어떤 상황에서 무엇을 사용해야 좋은지 명확해진다. 

 

 

결론

 

 

결론은 인덱스값으로 값에 접근할 것인가? 불특정 특정값(key 또는 value)로 값에 접근할 것인가? 라고 할 수 있겠다.

배열 : 인덱스값으로 값에 접근하는 경우 
객체 : 불특정 특정값(key 또는 value)로 값에 접근하는 경우

물론 무조건 이렇게 해야하는 것은 아니다. 단지 이렇게 하는 게 더 사용하기 좋다는 생각이다. 

편한대로 사용하도록 하자.

 

 

 

728x90
반응형
profile

개발공작소

@모찌바라기

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!