Wartości truthy i falsy
Proszę poznać wartości interpretowane jako true lub false.
Wartości truthy i falsy to bezpłatna lekcja JavaScript Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej JavaScript Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs JavaScript Academy zawiera 4 lekcji w sumie.
Truthy i falsy
W kontekście logicznym, takim jak instrukcja if, każda wartość JavaScript jest traktowana jako truthy albo falsy. Wartości falsy zachowują się jak false, a wszystkie pozostałe są truthy.
if ("hello") {
console.log("strings are truthy")
}Lista wartości falsy
Istnieje dokładnie osiem wartości falsy. Należy je zapamiętać, ponieważ wszystko, czego nie ma na tej liście, jest truthy.
- false
- 0 i ujemne zero
- pusty ciąg znaków
- null
- undefined
- NaN
- zero typu BigInt
console.log(Boolean(0))
console.log(Boolean(""))
console.log(Boolean(null))Zero jest falsy
Liczba zero jest falsy, ale każda inna liczba, w tym liczby ujemne, jest truthy.
console.log(Boolean(0))
console.log(Boolean(-5))
console.log(Boolean(0.1))Pusty ciąg znaków jest falsy
Pusty ciąg znaków jest falsy, ale ciąg zawierający spację lub tekst false jest truthy, ponieważ nie jest pusty.
console.log(Boolean(""))
console.log(Boolean(" "))
console.log(Boolean("false"))Null i undefined
Zarówno null, jak i undefined są falsy. Reprezentują brak wartości.
console.log(Boolean(null))
console.log(Boolean(undefined))NaN jest falsy
NaN, czyli wynik nieprawidłowej operacji numerycznej, jest falsy. Pozwala to wykrywać nieudane konwersje podczas sprawdzania wartości logicznych.
console.log(Boolean(NaN))
console.log(Boolean(Number("abc")))Obiekty są zawsze truthy
Każdy obiekt i każda tablica są truthy, nawet jeśli są puste. Zaskakuje to wielu programistów, którzy oczekują, że pusta tablica będzie falsy.
console.log(Boolean({}))
console.log(Boolean([]))Konwersja do wartości logicznej
Operator podwójnej negacji to zwięzły sposób konwersji dowolnej wartości do odpowiadającej jej wartości logicznej, taki sam jak działanie instrukcji if.
console.log(!!"text")
console.log(!!0)
console.log(!![])Używanie truthiness w warunkach
Często korzysta się z truthiness, aby sprawdzić, czy brakuje wartości. Pusty ciąg znaków, null lub undefined spowodują pominięcie gałęzi if.
function greet(name) {
if (name) {
return "Hi " + name
}
return "Hi guest"
}
console.log(greet(""))
console.log(greet("Ann"))Wartości domyślne z użyciem Or
Operator logiczny OR zwraca pierwszy operand truthy, co jest klasycznym sposobem dostarczania wartości domyślnych. Należy pamiętać, że zero i pusty ciąg znaków uruchamiają użycie wartości domyślnej.
const input = ""
const value = input || "default"
console.log(value)Nullish a falsy
Operator nullish coalescing korzysta z wartości zastępczej tylko dla null lub undefined, a nie dla innych wartości falsy, takich jak zero, dzięki czemu jest bezpieczniejszy przy definiowaniu wartości domyślnych dla liczb.
const count = 0
console.log(count || 10)
console.log(count ?? 10)Szybki test
Proszę sprawdzić swoją wiedzę na temat wartości truthy i falsy.
Podsumowanie
Podsumowanie: Istnieje osiem wartości falsy, a wszystko pozostałe jest truthy.
- Falsy: false, 0, pusty ciąg znaków, null, undefined, NaN, zero typu BigInt
- Puste obiekty i tablice są truthy
- Podwójna negacja konwertuje wartość do wartości logicznej
- Nullish coalescing sprawdza tylko null i undefined
console.log(Boolean([]))
console.log(Boolean(0))Często zadawane pytania
Czy lekcja „Wartości truthy i falsy” jest bezpłatna?
Tak — pełny tekst „Wartości truthy i falsy” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu JavaScript Academy, przejdź na CoddyKit PRO. Kurs JavaScript Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Wartości truthy i falsy”?
Proszę poznać wartości interpretowane jako true lub false. Ćwiczysz JavaScript Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć JavaScript Academy?
Nie wymagamy żadnego doświadczenia. JavaScript Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Wartości truthy i falsy”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji JavaScript Academy?
Tak. Każda lekcja JavaScript Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Wartości truthy i falsy
- Równość luźna a ścisła
- Niejawna konwersja typów w działaniach
- Techniki jawnej konwersji