728x90
반응형
질문 : 이것은 !! (NOT) JavaScript의 연산자?
내가 알지 못하는 연산자를 사용하는 것처럼 보이는 코드를 두 개의 느낌표 형태로 보았습니다. !!
. 누군가이 운영자가 무엇을하는지 말해 줄 수 있습니까?
내가 본 맥락은
this.vertical = vertical !== undefined ? !!vertical : this.vertical;
답변
Object
를 boolean
변환합니다. 거짓이면 (예 : 0
, null
, undefined
등), false
이고 그렇지 않으면 true
입니다.
!oObject // inverted boolean
!!oObject // non inverted boolean so true boolean representation
그래서 !!
연산자가 아니라 단지 !
연산자 두 번.
실제 사례 "테스트 IE 버전":
const isIE8 = !! navigator.userAgent.match(/MSIE 8.0/);
console.log(isIE8); // returns true or false
⇒
console.log(navigator.userAgent.match(/MSIE 8.0/));
// returns either an Array or null
하지만 ⇒
console.log(!!navigator.userAgent.match(/MSIE 8.0/));
// returns either true or false
출처 : https://stackoverflow.com/questions/784929/what-is-the-not-not-operator-in-javascript
728x90
반응형
'프로그래밍 언어 > HTML,CSS,JS' 카테고리의 다른 글
JavaScript에서 문자열을 정수로 변환하는 방법 (0) | 2021.08.30 |
---|---|
검색 엔진이 AngularJS 애플리케이션을 처리하는 방식 (0) | 2021.08.30 |
CSS-float 자식 DIV 높이를 부모 높이로 확장하는 방법 (0) | 2021.08.28 |
table 셀의 CSS 텍스트가 길면 줄임표로 생략하는 방법 (0) | 2021.08.28 |
AngularJS를 사용하여 브라우저 콘솔에서 $ scope 변수에 액세스 하는 방법 (0) | 2021.08.28 |