Truthy와 Falsy 값
Coddy Lua 여정의 Fundamentals 섹션에 포함된 레슨 — 90개 중 24번째.
and, or, not과 같은 논리 연산자를 사용할 때, Lua는 논리적 맥락에서 무엇을 "true" 또는 "false"로 간주할지 결정해야 합니다. 이 개념을 truthy 및 falsy 값(truthy and falsy values)이라고 하며, Lua는 이를 다른 많은 프로그래밍 언어와 다르게 처리합니다.
Lua에서는 오직 두 가지 값만이 falsy(논리 연산에서 false로 취급됨)로 간주됩니다:
print(false and "This won't print") -- false는 falsy입니다
print(nil and "This won't print") -- nil은 falsy입니다Lua에서 그 외의 모든 것은 참(truthy)으로 간주됩니다(논리 연산에서 true로 처리됨). 여기에는 다른 언어에서 오신 분들이라면 놀랄 수도 있는 값들이 포함됩니다:
print(0 and "This will print") -- Lua에서 0은 참(truthy)입니다!
print("" and "This will print") -- 빈 문자열은 참(truthy)입니다!
print({} and "This will print") -- 빈 테이블은 참(truthy)입니다!치트 시트
Lua에서 오직 두 가지 값만이 falsy(논리 연산에서 false로 취급됨)로 간주됩니다:
falsenil
그 외의 모든 것은 truthy이며, 다음을 포함합니다:
0(다른 많은 언어들과 달리)- 빈 문자열
"" - 빈 테이블
{}
print(false and "Won't print") -- false는 falsy입니다
print(nil and "Won't print") -- nil은 falsy입니다
print(0 and "Will print") -- Lua에서 0은 truthy입니다
print("" and "Will print") -- 빈 문자열은 truthy입니다직접 해보기
이 레슨에는 코드 챌린지가 없습니다.
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.