기본 콘텐츠로 건너뛰기

JavaScript에서 더블 NOT(!!) 연산자로 null과 undefined 확인하기

자바스크립트의-더블-NOT(!!)-연산자를-중심으로-하는-간결한-디지털-일러스트레이션을-나타내며,-코드-편집기-화면에-강조된-"if(!!)"-조건문을-통해-논리적-연산을-시각화하고-있습니다.

안녕하세요! 오늘은 JavaScript에서 변수가 null이나 undefined인지 간단하게 확인할 수 있는 유용한 Logical operator, 더블 NOT(!!) 연산자에 대해 알아보겠습니다.


Double NOT (!!):

JavaScript의 더블 NOT 연산자는 매우 간단하지만 강력한 툴입니다. 일반적인 NOT(!) 연산자는 Boolean 값을 부정합니다. 예를 들어, `!true`는 `false`를, `!false`는 `true`를 반환합니다.

```

!true;  // !t returns false

!false; // !f returns true

!"";    // !f returns true

!"Cat"; // !t returns false

!null;  // !f returns true

```


하지만 `!!` 연산자를 사용하면, 한번 부정된 Boolean 값을 다시 부정하여 원래의 truthy/falsy 여부를 얻을 수 있습니다.

```

!!true;  // !t returns true

!!false; // !f returns false

!!"";    // !f returns false

!!"Cat"; // !t returns true

!!null;  // !f returns false

```

null과 undefined 확인하기:

JavaScript에서 `null`과 `undefined`는 둘 다 falsy한 값입니다. `null`은 명시적으로 값이 없음을 나타내는 반면, `undefined`는 값이 할당되지 않은 상태를 의미합니다. 더블 NOT 연산자를 사용하면 이러한 상태를 쉽게 확인할 수 있습니다. ``` var value1 = null; var value2 = undefined; var isValue1Null = !!value1; // !f returns false var isValue2Undefined = !!value2; // !f returns false ```


조건문에서 활용:

조건문에서 `!!` 연산자를 사용하면, 코드를 간결하고 명확하게 만들 수 있습니다. 예를 들어, `if(x !== "" && x !== null && x !== undefined)` 대신 `if(!!x)`로 작성할 수 있습니다. ``` if(x !== "" && x !== null && x !== undefined){ //x가 유효한 경우 } ``` ``` if(!!x){ //x가 유효한 경우 } ```

이상으로, JavaScript에서 `null`이나 `undefined` 값을 간단하게 확인할 수 있는 더블 NOT(`!!`) 연산자에 대해 알아보았습니다. 이 연산자는 코드의 가독성을 높이고, 변수의 상태를 명확하게 판단하는 데 큰 도움이 됩니다. 실제 개발 환경에서 이러한 패턴을 활용하여 효율적이고 명확한 코드를 작성해 보세요. 여러분의 프로그래밍 경험에 도움이 되길 바랍니다!


댓글

이 블로그의 인기 게시물

에러코드 1020030014: 오즈 리포트에서의 java.io.IOException 연결 문제 해결하기

공공 SI 프로젝트에서 근무하며, 우리는 때때로 기대하지 못한 도전에 직면합니다. 이번 글에서는 특히 공공 분야의 IT 전문가들이라면 한 번쯤 마주쳤을 법한, 답답함의 극치를 보여주는 OZ 리포트 소프트웨어와의 경험을 나누고자 합니다. 여러분이 비슷한 상황에 처했을 때 조금이나마 도움이 되길 바라면서, 저의 경험과 해결 방법을 공유하려 합니다. 이 글이 그동안 답답한 마음을 조금이라도 해소해 드릴 수 있다면 기쁠 것입니다. 에러코드 직면 최근, 오즈 리포트 소프트웨어 사용 중에 예기치 못한 에러코드 1020030014에 직면했습니다. 에러코드: 1020030014 상세 메시지: java.io.IOException: Failed to get connection; IO 예외 상황. The Network Adapter could not establish the connection 이 에러는 왜 발생했을까요? 문제의 원인과 해결 과정을 아래와 같이 정리해 보았습니다. 1. 쿼리 디자이너 데이터베이스 연결 정보 수정 먼저, 데이터베이스 연결 정보를 수정했습니다. 이전에는 정보 이름이나 서버 정보를 직접 입력했었는데, 이를 db.properties 파일을 이용해 연결하는 방식으로 변경하였습니다. 쿼리 결과 값을 조회해 정상적인 결과가 나오는지 확인했고, 이 과정에서 문제가 없다면 적용이 제대로 된 것입니다. 만약 쿼리 결과에 문제가 있다면, db.properties 파일의 정보를 다시 확인하고 수정해야 합니다. (좌)직접 데이터를 입력하는 방식 → (우)db.properties 연결하는 방식 2. 리포트 디자이너에 수정된 쿼리디자이너(ODI) 적용 이어서, 리포트 디자이너에서 수정된 쿼리 디자이너를 적용했습니다. 실행 후 미리보기를 확인했을 때 에러가 발생했습니다. 공식 홈페이지 의 QnA를 참조하여 해결책을 찾았는데, 이 과정이 상당히 번거로웠습니다. 해결 방법 결국, 쿼리 디자이너의 `config/db.properties` 뿐만 아니라 리포트 디자이너의...

보안 환경에서 XCOPY로 실무 파일 관리의 효율성 극대화

실무 환경에서는 때때로 보안상의 이유나 다른 제약으로 인해 SVN이나 Git과 같은 버전 관리 시스템에 접근이 어려울 수 있습니다. 이러한 상황에서 프로젝트 내에서 개발된 내용을 효과적으로 추출하고 관리하는 것이 중요합니다. 오늘은 이러한 상황에 도움이 될 수 있는 XCOPY 명령어를 사용한 파일 관리 방법에 대해 알아보겠습니다. XCOPY란? XCOPY는 하위 디렉터리를 포함한 파일 및 디렉터리를 복사하는 Windows 명령줄 도구입니다. 이 도구는 특히 대규모 파일과 폴더의 복사와 관리에 유용합니다. XCOPY를 사용하면 다음과 같은 두 가지 주요 작업을 수행할 수 있습니다: 수정일 이후의 파일 추출 : 특정 날짜 이후에 수정된 파일들만을 선택적으로 복사합니다. 커밋한 파일 이름 목록으로 추출 : 특정 파일 목록에 기반하여 파일을 복사합니다. XCOPY에는 여러 가지 유용한 옵션이 있으며, 각 옵션은 특정한 목적에 맞게 사용됩니다. 예를 들어: /s : 원본 폴더 내 비어있지 않는 하위폴더를 복사합니다. /h : 숨김 파일과 시스템 파일을 복사합니다. /t : 디렉터리 구조만을 복사합니다. (빈 폴더는 제외하며, 필요시 /e 옵션 추가) /e : 원본 폴더 내 모든 폴더를 복사합니다. /d:m-d-y : 지정된 날짜 이후에 변경된 파일만 복사합니다. /y : 복사 여부를 묻지 않고 진행합니다. 수정일 이후의 파일 추출 방법 xcopy "원본" "대상" /S /d:m-d-y # 예시: xcopy "C:\workspace\project\src" "C:\Users\Desktop\새 폴더" /S /D:30-07-2023 이 명령어는 원본에서 대상으로 입력된 날짜 이후에 수정된 모든 파일을 복사합니다. 이 방법은 특정 기간 동안의 변경사항만을 추출할 때 매우 유용합니다. 커밋한 파일 이름 목록으로 추출 특정 파일만 복사하려는 경우에는 파일 목록을 기반으로...