2025-09-01 21:09

Tags: 논리학 프로그래밍 기초

거짓 False

프로그래밍 에서의 거짓 (False)

  • 프로그램의 흐름을 제어하는 논리값
  • 반복문 조건문 논리 연산자 등 에서 사용됨
  • 명시적인 false 뿐만 아니라 각 언어 별로 falsy 하게 평가되는 값들이 존재함
  • 자바스크립트에선 엄격하게 비교하려면 등호 3개 쓰고, 느슨하게 하려면 2개 쓴다.
  • false 는 명확한 거짓이라는 불리언 값이지만, NULL 은 값이 없음. 비어있다는 뜻이고, undefined 는 초기화되지 않았다는 것이다.
언어 (Language)Falsy 값 (거짓으로 취급되는 값)특징
JavaScriptfalse, 0, -0, 0n (BigInt), "" (빈 문자열), null, undefined, NaNFalsy 값의 종류가 가장 많아 유연하지만, 혼란을 유발할 수 있습니다. []{} (빈 배열/객체)는 Truthy 입니다.
PythonFalse, None, 0, 0.0, 0j (복소수), "", [], (), {} (빈 시퀀스/컬렉션)숫자 0과 비어있는 모든 컨테이너(리스트, 튜플, 딕셔너리 등)가 Falsy에 해당합니다.
Javafalse오직 boolean 타입의 false 값만이 거짓입니다. 매우 엄격하여 타입 변환으로 인한 실수가 적습니다.
C++false, 0, nullptr숫자 0은 정수, 실수, 포인터 타입에 관계없이 거짓으로 평가됩니다.
Rubyfalse, nil오직 falsenil 두 가지만 Falsy 입니다. 숫자 0이나 빈 문자열 ""은 Truthy라는 점이 독특합니다.
PHPfalse, 0, 0.0, "", "0", [] (빈 배열), null"0"이라는 문자열도 Falsy로 취급하는 등, JavaScript만큼이나 유연하고 주의가 필요합니다.