`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—falsew typie logicznym0— Liczba zero (dziesiętne0.0takż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—truew typie logicznym- Liczby (inne niż 0) — Na przykład
1i-1są 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 typuSymbolró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.