>  기사  >  웹 프론트엔드  >  JavaScript의 !와 !!의 차이점을 한 글로 이해해보세요!

JavaScript의 !와 !!의 차이점을 한 글로 이해해보세요!

青灯夜游
青灯夜游앞으로
2020-06-24 14:01:562109검색

이 글에서는 JavaScript의 !와 !!의 차이점에 대해 설명합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

JavaScript의 !와 !!의 차이점을 한 글로 이해해보세요!

js에서 !의 사용법은 비교적 유연합니다. 논리 연산을 수행하는 것 외에도 종종 <span style="font-family:monospace">!</span>를 사용합니다. 유형 판단을 수행하려면 ! 및 위 개체를 사용하여 부울 값을 얻을 수 있습니다.
<span style="font-family:monospace">!</span>做类型判断,可以用!与上对象来求得一个布尔值,

1、!可将变量转换成boolean类型,null、undefined和空字符串取反都为false,其余都为true。

!null=true
!undefined=true
!&#39;&#39;=true
!100=false
!&#39;abc&#39;=false

2、!!常常用来做类型判断,在第一步!(变量)之后再做逻辑取反运算,在js中新手常常会写这样臃肿的代码:
判断变量a为非空,未定义或者非空串才能执行方法体的内容

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

实际上我们只需要写一个判断表达:

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

就能和上面达到同样的效果。a是有实际含义的变量才执行方法,否则变量null,undefined和''空串都不会执行以下代码。

可以总结出来,“!”是逻辑与运算,并且可以与任何变量进行逻辑与将其转化为布尔值,“!!

1. !는 변수를 부울 유형, null로 변환할 수 있습니다. 정의되지 않고 비어 있습니다. 문자열의 부정은 거짓이고 나머지는 참입니다.

rrreee2. !!는 첫 번째 단계(변수) 후에 논리적 반전 연산이 수행되는 경우가 많습니다. 메소드 본문의 내용은 변수 a가 비어 있지 않거나, 정의되지 않았거나, 비어 있지 않은 문자열로 판단된 경우에만 실행될 수 있습니다. rrreee

실제로는 판단 표현식 🎜rrreee🎜만 작성하면 됩니다. 위와 같은 효과를 얻습니다. a가 실제 의미를 갖는 변수인 경우에만 메소드가 실행됩니다. 그렇지 않으면 변수 null, undefound 및 ''가 빈 문자열인 경우 다음 코드가 실행되지 않습니다. 🎜🎜"!"는 논리적 AND 연산이며 어떤 변수와도 논리적으로 AND 연산하여 부울 값 "!!"로 변환할 수 있다는 결론을 내릴 수 있습니다. 논리 AND 연산입니다. AND의 부정 연산, 특히 후자는 유형을 판단할 때 코드에서 간단하고 효율적이므로 null, 정의되지 않은 문자열 및 빈 문자열을 여러 번 판단하기 위한 중복 코드가 필요하지 않습니다. 🎜🎜추천 튜토리얼: "🎜JS Tutorial🎜"🎜

위 내용은 JavaScript의 !와 !!의 차이점을 한 글로 이해해보세요!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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