`truthy` i `falsy` w JavaScript
Ten artykuł wyjaśnia truthy
i falsy
w JavaScripcie.
YouTube Video
truthy
i falsy
w JavaScript
Koncepcje truthy
i falsy
w JavaScript odgrywają bardzo ważną rolę, zwłaszcza przy ocenie wyrażeń warunkowych. Truthy
i falsy
określają, czy wartość jest ewaluowana jako prawdziwa (true
) lub fałszywa (false
), ale nie muszą to być wartości logiczne true
lub false
same w sobie.
Wartości Falsy
Wartości Falsy
odnoszą się do wartości, które są ewaluowane jako false
w warunkach JavaScript. Poniżej znajduje się lista wartości falsy
w JavaScript.
1const values = [
2 false,
3 0,
4 -0,
5 0.0,
6 -0.0,
7 0n,
8 -0n,
9 "",
10 null,
11 undefined,
12 NaN
13];
14
15for (let value of values) {
16 if (value) {
17 console.log(`${value} is truthy`);
18 } else {
19 console.log(`${value} is falsy`);
20 }
21}
W tym przykładzie wszystkie wartości falsy
zostaną wyświetlone jako „falsy”. Poniżej znajduje się lista wartości falsy
w JavaScript.
false
—false
w typie logicznym0
— Liczba zero (dziesiętne0.0
także jestnieprawdziwe
)-0
— Ujemne zero (technicznie różne od0
, ale nadalnieprawdziwe
)0n
— Zero w typie BigInt""
— Pusty ciąg znaków o długości 0null
— Brak wartościundefined
— Wartość niezdefiniowanaNaN
— Nie jest liczbą
Te wartości są traktowane jako false
w operacjach logicznych i wyrażeniach warunkowych (takich jak instrukcje if
).
Wartości Truthy
Wszystkie wartości, które nie są falsy
, są truthy
. Odnosi się to do wartości, które są ewaluowane jako logiczne true
. W JavaScript wiele wartości jest traktowanych jako truthy
.
1const values = [
2 true,
3 1,
4 -1,
5 "Hello",
6 " ",
7 [],
8 {},
9 function() {},
10 Symbol(),
11 Infinity
12];
13
14for (let value of values) {
15 if (value) {
16 console.log(value, ' is truthy');
17 } else {
18 console.log(value, ' is falsy');
19 }
20}
W tym kodzie wartości truthy
są wyświetlane jako "truthy". Na przykład, następujące wartości są truthy
.
true
—true
w typie logicznym- Liczby (inne niż 0) — Na przykład
1
i-1
są równieżtruthy
. - Łańcuchy znaków (niepuste) — na przykład
"Hello"
lub" "
(nawet łańcuchy zawierające tylko spacje sątruthy
) - Obiekty — Nawet puste obiekty (
{}
) i tablice ([]
) sątruthy
. - Funkcje — Same funkcje są również
truthy
. Symbol
— Wartości typuSymbol
również sątruthy
.Infinity
— Zarówno dodatnia, jak i ujemna nieskończoność sątruthy
.
Zastosowania truthy
i falsy
Pojęcia truthy
i falsy
są często używane w instrukcjach warunkowych i operacjach logicznych. Na przykład, przy ustawianiu wartości domyślnej za pomocą operatora ||
(logiczne LUB), pierwsza wartość truthy
jest zwracana jako wynik.
Jak sprawdzić wartości falsy
Do sprawdzania wartości falsy
wygodnie jest użyć funkcji Boolean
. Funkcja Boolean
jawnie konwertuje podaną wartość na typ logiczny.
Przykłady użycia funkcji Boolean
1const values = [
2 false,
3 0,
4 "",
5 null,
6 undefined,
7 NaN
8];
9
10for (let value of values) {
11 console.log(`${value} is ${Boolean(value) ? 'truthy' : 'falsy'}`);
12}
Wnioski
Truthy
i falsy
w JavaScript są istotne dla zrozumienia, jak wartości inne niż logiczne są oceniane w wyrażeniach warunkowych. Wartości falsy
obejmują false
, 0
, pusty łańcuch, null
, undefined
oraz NaN
, podczas gdy wszystkie inne wartości są oceniane jako truthy
. Zrozumienie tych pojęć pozwala pisać bardziej elastyczny i wydajny kod.
Możesz śledzić ten artykuł, korzystając z Visual Studio Code na naszym kanale YouTube. Proszę również sprawdzić nasz kanał YouTube.