프로퍼티 점표기법은 언제쓰는가? 대괄호 표기법만 쓰면 되는거 아니야?

그거아냐·2024년 12월 30일
0

삽질노트

목록 보기
4/4
post-thumbnail

문제의 시작

당시 상황

스터디 진행중 프로퍼티에서 점표기법과 대괄호표기법에 대한 이야기가 나왔다.

기본적으로 프로퍼티에 접근하기위한 방법은 2가지 이다.

점표기법

const name = {
	firstName: 'Forger'
	lastName: 'anya'
}

name.firstName // "Forger"
name.lastName // "anya"

대괄호 표기법

const name = {
	firstName: 'Forger'
	lastName: 'anya'
}

name["firstName"] // "Forger"
name["lastName"] // "anya"

의문1 왜 두가지의 표기법이 있을까?
의문2 대괄호표기법이 동적인 값을 담아 호출할 수 있다는것은 알겠는데 그러면 싹다 대괄호만 사용하면 되는 것이 아닌가? 추가로 점표기법은 key가 숫자이면 사용도 못하는데, 왜 있는 걸까

뭘까 이아이...


이루고자 했던바

의문을 해결하고 싶었음


해본 삽질들

아티클, 블로그 찾아보기

https://oliviakim.tistory.com/184
-> 굉장히 좋은 블로그 글

https://ko.javascript.info/object


해결책

대괄호 표기법은 프로퍼티 이름과 값의 제약을 없애주기 때문에 점 표기법보다 훨씬 강력합니다. 그런데 작성하기 번거롭다는 단점이 있습니다.

이런 이유로 프로퍼티 이름이 확정된 상황이고, 단순한 이름이라면 처음엔 점 표기법을 사용하다가 뭔가 복잡한 상황이 발생했을 때 대괄호 표기법으로 바꾸는 경우가 많습니다.

일반적인 상황에서는(정적인) 점표기법을 사용하는 것이 다른 사람에게 객체에 접근하고 있다는 것을 쉽게 보여줄 수 있다.
대괄호표기를 사용하면 동적인 값이 사용된다는 것을 알려줄수 있다.


느낀점

한 가지 방법으로 다 할수 있는데 왜 나누어져 있지? 의문을 처음 가져본 주제였다. 공식적인 문서에는 사용법이 위주여서 정답을 찾기 어려웠는데, 좋은 블로그글을 찾았고, 큰 동의를 한다.

프로퍼티를 접근함에 있어 key 값이 정적인지 동적인지 직관적으로 보여줄 수 있다! 가 가장 큰 결론이다.


profile
지금 하고 있는 그거 그거아냐

0개의 댓글