왜 자바스크립트에서 [9,8,7,6][1,2] = 7 일까?

재밌는 자바스크립트 퀴즈 문제가 있어서 들고와 봤습니다 :)) 한번 생각해보시고 스크롤 내려보세요!


이 코드에서 [1,2]는 배열이 아니고, array subscript로 동작합니다. javascript의 comma operator를 이해하면 문제가 풀립니다. (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comma_Operator)

comma(,) 로 나눠져 있으면 가장 마지막 값을 리턴해주는 것인데요.

let x = 1;

x = (x++, x);
console.log(x); // Expected output: 2

x = (2, 3);
console.log(x); // Expected output: 3

다시 문제로 돌아가서 뒤 [1,2] 에서 comma operator로 보면 결국 [9,8,7,6][2] 이 되고 앞 array에서 index 2에 위치하고 있는 7이 되는 것입니다.


조금 더 변형해보자면 아래와 같겠죠?

[9,8,7,6][1,2,3] // outputs 6
[9,8,7,6][8,2,3,1] // outputs 8

Javascript Interview Question: Why does [9,8,7,6][1,2] = 7 ?

Medium

Javascript Interview Question: Why does [9,8,7,6][1,2] = 7 ?

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 2월 12일 오전 1:24

 • 

저장 15조회 4,144

댓글 0

    함께 읽은 게시물

    AI(LLM) 애플리케이션의 발전 속도가 AI 지능(능력)의 발전 속도를 따라가지 못하고 있는 상태가 되었다. 즉, 이제 AI가 부족한 것이 문제가 아니라, AI의 능력을 100% 활용하지 못하고 있는 것이 문제인 상태가 되었다는 이야기.


    Next.js 프로젝트를 AWS EKS에 배포하며 배운 것들

    ... 더 보기

    쿠버네티스를 활용한 클라우드 네이티브 데브옵스 | 존 어런들 - 교보문고

    product.kyobobook.co.kr

    쿠버네티스를 활용한 클라우드 네이티브 데브옵스 | 존 어런들 - 교보문고

     • 

    저장 20 • 조회 1,902


    🌎 해외에서 일하면 뭐가 좋을까요❓

    외국어를 사용해서? 돈을 더 많이 벌어서? 새로운 기회가 많아서? 글로벌 경력을 쌓을 수 있어서?

    ... 더 보기

    개발자 교양 팟캐스트

    A

    ... 더 보기

    여러분 PostgreSQL 프로시저는 Python, JavaScript은 물론 Perl, Java, Lua 등도 사용할 수 있답니다~* 대부분 구식🤭 MySQL만 쓰셔서 모르시겠지만.. (도망간다)


    Logger 인스턴스 매번 생성하시나요?

    o

    ... 더 보기

    Logger Caching & Performance

    iOYES

    Logger Caching & Performance