2014-09-24 3 views
0

최근에 자바 스크립트 난독 화에 대한 가이드를 확인했습니다. 이 가이드에는 몇 가지 간단한 단계가 있습니다. 나는 $ = []이 빈 배열임을 이해할 수 있는데, $=[$=[]]; $이 0이 된 이유는 이해할 수 있지만, 왜 !$ (거짓)과 $ (제로)을 추가 한 후에 왜 "거짓"문자열이 나오는 지 이해할 수 없다. 누구든지이 설명을 나에게 줄 수 있습니까?자바 스크립트 난독 화에 대한 이해

미리 감사드립니다.

+1

'$은 = $ =은 []] '과 동일하다'$ = [ ]; $ = [$]', 즉'$ = [[]]'. – kay

+0

'! $ + $ == false + [[]] == toString (false) + toString ([[]]) == "거짓"+ ""== "거짓"' – georg

답변

0

나는 $ = [$ = []] 이후의 이유를 이해할 수 있습니다. $가 0이됩니다

아니요, 그렇지 않습니다. $[[]], 즉 빈 배열의 배열이됩니다. 추가 한 후 !$ (false)를하고 $ (영) 우리가 "거짓"문자열을받을 이유

내가 이해할 수없는

당신은 않을 것; 그러나 당신의 전제가 잘못되었습니다. 당신이 문자열 연결로 이어질 것입니다 부울 및 대상,에 + operator을 사용하고 있지만 false[[]]을 추가 할 때 :

> $ = [[]]; 
> String(!$) 
"false" 
> String($) 
"" 
> !$+$ 
"false" 
관련 문제