Javascript Interview Question: Why does [9,8,7,6][1,2] = 7 ?
Medium
재밌는 자바스크립트 퀴즈 문제가 있어서 들고와 봤습니다 :)) 한번 생각해보시고 스크롤 내려보세요!
이 코드에서 [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
다음 내용이 궁금하다면?
이미 회원이신가요?
2024년 2월 12일 오전 1:24