logo

Jak sprawdzić pusty ciąg w JavaScript

W JavaScript możemy sprawdzić, czy ciąg znaków jest pusty, czy nie, za pomocą kilku metod. Oto kilka przykładów:

1. Korzystając z właściwości długości:

Możemy skorzystać z właściwość długości ciągu, aby sprawdzić, czy zawiera on jakieś znaki, czy nie. Jeśli długość wynosi zero, oznacza to, że ciąg jest pusty.

Na przykład:

 let str = ''; if (str.length === 0) { console.log('String is empty'); } else { console.log('String is not empty'); } 

Wyjście

 String is empty 

2. Używając metody trim():

The metoda przycinania(). usuwa białe znaki z obu końców ciągu znaków. Jeśli ciąg znaków jest pusty, przycinać() zwróci pusty ciąg.

 let str = ''; if (str.trim() === '') { console.log('String is empty'); } else { console.log('String is not empty'); } 

Wyjście

 String is empty 

3. Używając ścisłego porównania równości z pustym ciągiem znaków:

W JavaScript brany jest pod uwagę pusty ciąg falsy , co oznacza, że ​​w kontekście logicznym jest traktowana jako fałszywa. Możemy więc użyć ścisłego porównania równości, aby sprawdzić, czy ciąg znaków jest równy ciągowi pustemu.

 let str = ''; if (str === '') { console.log('String is empty'); } else { console.log('String is not empty'); } 

Wyjście

 String is empty 

4. Używanie ! operator:

Możemy skorzystać z ! operator aby sprawdzić, czy ciąg jest falsy . Pusty ciąg znaków jest uważany w JavaScript za fałszywy, więc jeśli ciąg jest pusty, ! zwróci prawdę.

 let str = ''; if (!str) { console.log('String is empty'); } else { console.log('String is not empty'); } 

Wyjście

 String is empty 

5. Używając metody charAt():

The charAt() Metoda zwraca znak o określonym indeksie w ciągu znaków. Jeśli ciąg znaków jest pusty, charAt() zwróci pusty ciąg.

 let str = ''; if (str.charAt(0) === '') { console.log('String is empty'); } else { console.log('String is not empty'); } 

Wyjście

 String is empty 

6. Używanie wyrażeń regularnych:

Możemy również skorzystać wyrażenia regularne aby sprawdzić pusty ciąg. Poniższe wyrażenie regularne dopasowuje pusty ciąg:

 let str = ''; if (/^s*$/.test(str)) { console.log('String is empty'); } else { console.log('String is not empty'); } 

Wyjście

 String is empty 

W tym wyrażeniu regularnym ^ dopasowuje początek ciągu, S* dopasowuje zero lub więcej białych znaków, oraz $ dopasowuje koniec ciągu. Jeśli ciąg jest pusty lub zawiera tylko białe znaki, wyrażenie regularne zostanie dopasowane i zwróci wartość true.

7. Korzystając z metody Object.prototype.toString():

Jeśli masz zmienną, która może być ciągiem znaków lub obiektem innego typu, możesz użyć metody Obiekt.prototyp.toString() metodę, aby uzyskać jej typ, a następnie sprawdzić, czy jest to ciąg znaków i czy jest pusty.

 let str = {}; if (Object.prototype.toString.call(str) === '[object String]' &&str.trim() === '') { console.log('String is empty'); } else { console.log('String is not empty'); } 

Wyjście

 String is empty 

Ten kod używa Obiekt.prototyp.toString() metodę, aby uzyskać typ zmiennej str, a następnie sprawdza, czy jest to ciąg znaków, porównując wynik z ciągiem znaków „[Ciąg obiektu]” . Jeśli jest to ciąg znaków, przycina ciąg i sprawdza, czy jest pusty.

8. Korzystając z metody toString():

Jeśli mamy zmienną, która może być ciągiem znaków, wartością null lub niezdefiniowaną, możemy użyć metody doString() metodę, aby przekonwertować go na ciąg znaków, a następnie sprawdzić, czy jest pusty.

 let str = null; if (str &&str.toString().trim() === '') { console.log('String is empty'); } else { console.log('String is not empty'); } 

Wyjście

 String is empty 

Ten kod najpierw sprawdza, czy zmienna str nie ma wartości null lub jest niezdefiniowana, a następnie konwertuje ją na ciąg znaków za pomocą metody doString() metoda. Następnie przycina powstały ciąg i sprawdza, czy jest pusty.

9. Używając metody redukcji():

Jeżeli mamy tablicę ciągów znaków i chcemy sprawdzić, czy któryś z nich jest pusty, możemy skorzystać z metody zmniejszyć() metodę iteracji po tablicy i sprawdzenia, czy którykolwiek z ciągów znaków jest pusty.

 let arr = ['', 'hello', 'world']; if (arr.reduce((acc, val) =>acc || val.trim() === '', false)) { console.log('Array contains an empty string'); } else { console.log('Array does not contain an empty string'); } 

Wyjście

 Array contains an empty string 

Ten kod używa zmniejszyć() metoda iteracji po tablicy przyr i sprawdź, czy którykolwiek z ciągów w tablicy jest pusty. The zmniejszyć() metoda wymaga a oddzwonić funkcję wywoływaną dla każdego elementu tablicy i wartość początkową false. The oddzwonić funkcja sprawdza, czy bieżący element jest pustym ciągiem znaków i zwraca wartość true, jeśli tak jest, lub wartość akumulatora ( wg ) W przeciwnym razie. Jeśli którykolwiek element tablicy jest pustym ciągiem znaków, końcowy wynik operacji zmniejszyć() metoda będzie miała wartość true, wskazując, że tablica zawiera pusty ciąg.