>  기사  >  웹 프론트엔드  >  js의 차이점과 사용법을 알아보세요!!

js의 차이점과 사용법을 알아보세요!!

coldplay.xixi
coldplay.xixi앞으로
2020-06-29 17:34:412009검색

js의 차이점과 사용법을 알아보세요!!

다른 사람의 js 코드를 보다가 이런 사용법을 발견했습니다.

if (!!item.value) {
	param[item.name] = item.value;
}

저는 js를 오랫동안 공부하지 않아서 빨리 추가했는데 특히 흥미로운 것을 발견했습니다.

추천 학습 튜토리얼: javascript 비디오 튜토리얼

js에서 !의 사용법은 비교적 유연하며 논리 연산 외에도 자주 사용됩니다! 유형 판단에 사용될 수 있습니다! 그리고 위의 개체는 부울 값
1,! 변수는 부울 유형으로 변환될 수 있습니다. null, 정의되지 않은 문자열 및 빈 문자열의 부정은 모두 true이고 나머지는 false입니다.

!null=true

!undefined=true

!''=true

!100=false

!'abc'=false

2,! ! 첫 번째 단계(변수) 후에 논리적 부정 연산이 수행되는 경우가 많습니다. JS에서는 다음과 같은 비대한 코드를 작성합니다.
변수 a가 비어 있지 않은지, 정의되지 않았는지 판단합니다. 빈 문자열 그래야만 메서드 본문의 내용을 실행할 수 있습니다.

var a;
if(a!=null&&typeof(a)!=undefined&&a!=''){
    //a有内容才执行的代码  
}

사실, 위와 동일한 효과를 얻으려면

if(!!a){
    //a有内容才执行的代码...  
}

라는 판단 표현만 작성하면 됩니다. a가 실제 의미를 갖는 변수인 경우에만 메소드가 실행됩니다. 그렇지 않으면 null, undefine 및 '' "빈 문자열 변수는 다음 코드를 실행하지 않습니다.

"로 요약할 수 있습니다. "는 논리적 AND 연산이며 모든 변수와 논리적으로 AND하여 부울 값으로 변환할 수 있습니다. "!!"는 논리적 AND의 부정 연산입니다. 특히 후자의 코드는 유형을 판단할 때 간단하고 효율적이므로 필요가 없습니다. null, 정의되지 않은 문자열 및 빈 문자열을 확인하는 중복 코드입니다.

그래서 처음의 코드에서 !value는 먼저 값을 반전된 부울 값으로 변환한 다음 얻은 부울 값을 다시 반전하여 값이 값은 null, 정의되지 않음 및 빈 문자열의 경우 if 본문의 코드가 실행되지 않습니다.

???또 다른 흥미로운 사실이 발견되었습니다???:

(!(~+[])+ {}) [--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~ +[] ]

위 js의 결과를 출력해 보세요... ?

?...빠져가세요...

위 내용은 js의 차이점과 사용법을 알아보세요!!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제