[[]][ []] [ []]는 어떻게 문자열 "10"을 생성합니까?
JavaScript에서는 당황스러운 표현식 [[]][ []] [ []]에는 문자열 "10"을 반환하는 다소 예상치 못한 결과가 있습니다. 이 이상한 행동 뒤에 숨은 미스터리를 풀어보겠습니다.
1. 식 분해:
식을 단계별로 분해하면 다음과 같이 분해할 수 있습니다.
++[[]][+[]] + [+[]]
2. 하위 부분 해석:
3. 단순화 및 연결:
이제 표현식을 더욱 단순화할 수 있습니다.
1 + 0
JavaScript의 연결 규칙은 다양한 유형의 피연산자가 있는 연산자를 만날 때 적용됩니다. 피연산자 중 하나는 숫자(1)이고 다른 하나는 배열(0)이므로 배열은 문자열("0")로 강제 변환됩니다.
4. 문자열 연결:
추가 결과는 문자열 연결입니다.
"1" + "0" === "10"
5. 정리:
이렇게 해서 [[]][ []] [ []]가 강제와 연결을 능숙하게 조작하여 "10"이라는 수수께끼의 결과를 만들어내는 숨겨진 경로를 발견합니다.
위 내용은 [[]][ []] [ []] JavaScript에서 문자열 '10'이 어떻게 발생합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!