객체의 마지막 쉼표

강지원·2021년 10월 11일
0
post-thumbnail

어제 객체 관련 문제를 풀며 문득 떠오른 의문 하나.
VSC를 저장하면 객체 데이터의 마지막에는
왜 쉼표가 자동으로 들어가는 걸까?

라는 궁금증에서 출발한 오늘의 포스팅.

1. 마지막 쉼표의 유무에 따른 결과

1-1 배열에서의 마지막 쉼표


결과를 보면 쉼표가 하나 있는 것 까지는 정상적인 결과로 나온다.
하지만 쉼표를 둘 이상 찍어주게 되면 빈 데이터가 추가되는 것을 볼 수 있다.

1-2 객체에서의 마지막 쉼표

점을 하나 찍었을 때 까지는 배열과 같은 결과가 나온다.
그러나 배열과 다른 점이 여기서 나오지롱.
객체에서 뒷 부분에 쉼표를 하나 더 찍어줘보도록 하겠다.

스크립트 구문 에러가 발생하는 것을 볼 수 있다.

2. 우리는 이걸 '후행 쉼표'라고 부르기로 했어요

알고보니 후행 쉼표라는 개념으로 존재하고 있었다.
하긴 내가 최초 발견자였을 리가 없다.

2-1 후행 쉼표의 특징

JS 코드에 새 요소, 매개 변수 또는 속성을 추가 할 때 유용 할 수 있습니다.
새 속성을 추가하려는 경우 해당 행이 이미 후행 쉼표를 사용하는 경우
이전의 마지막 행을 수정하지 않고 새 행을 추가 할 수 있습니다.
이렇게하면 버전 관리 차이가 더 깔끔 해지고
코드 편집이 덜 번거로울 수 있습니다.

암튼 좋다고 한다.
그 동안 VSC에서 자동 완성 해주던 후행 쉼표를 매번 지우던 나였지만
오늘을 계기로 안 지워도 된다는 깨달음을 얻었다.

그런데 주의점이 있는데

🥊JSON 은 후행 쉼표를 허용하지 않습니다.

라고 한다. 알고만 있자.

Reference
runebook.dev

profile
'Why' better than 'Yes'

0개의 댓글