logo

Sådan tjekker du tom streng i JavaScript

I JavaScript kan vi kontrollere, om en streng er tom eller ej, ved hjælp af flere metoder. Her er et par eksempler:

1. Brug af egenskaben længde:

Vi kan bruge længde ejendom af en streng for at kontrollere, om den har nogen tegn eller ej. Hvis længden er nul, betyder det, at strengen er tom.

For eksempel:

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

Produktion

 String is empty 

2. Brug af trim()-metoden:

Det trim() metode fjerner mellemrum fra begge ender af en streng. Hvis strengen er tom, trimme() vil returnere en tom streng.

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

Produktion

 String is empty 

3. Brug af streng lighedssammenligning med en tom streng:

I JavaScript betragtes en tom streng forfalskninger , hvilket betyder, at det behandles som falsk i en boolsk kontekst. Så vi kan bruge streng lighedssammenligning til at kontrollere, om strengen er lig med en tom streng.

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

Produktion

 String is empty 

4. Brug af ! operatør:

Vi kan bruge ! operatør for at kontrollere, om strengen er forfalskninger . En tom streng betragtes som falsk i JavaScript, så hvis strengen er tom, ! vil vende tilbage sandt.

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

Produktion

 String is empty 

5. Brug af charAt()-metoden:

Det charAt() metode returnerer tegnet ved et specificeret indeks i en streng. Hvis strengen er tom, charAt() vil returnere en tom streng.

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

Produktion

 String is empty 

6. Brug af regulære udtryk:

Vi kan også bruge regulære udtryk for at tjekke for en tom streng. Følgende regulære udtryk matcher en tom streng:

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

Produktion

 String is empty 

I dette regulære udtryk, ^ matcher begyndelsen af ​​strengen, s* matcher nul eller flere mellemrumstegn, og $ matcher enden af ​​strengen. Hvis strengen er tom eller kun indeholder blanktegn, vil det regulære udtryk matche og returnere sandt.

7. Brug af metoden Object.prototype.toString():

Hvis du har en variabel, der kunne være en streng eller en anden type objekt, kan du bruge Object.prototype.toString() metode for at få dens type og derefter kontrollere, om det er en streng, og om den er tom.

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

Produktion

 String is empty 

Denne kode bruger Object.prototype.toString() metode til at få typen af ​​variablen str, og tjekker derefter om det er en streng ved at sammenligne resultatet med strengen '[objekt streng]' . Hvis det er en streng, trimmer den strengen og tjekker, om den er tom.

8. Brug af metoden toString():

Hvis vi har en variabel, der kunne være en streng eller null eller udefineret, kan vi bruge toString() metode til at konvertere den til en streng og derefter kontrollere, om den er tom.

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

Produktion

 String is empty 

Denne kode kontrollerer først, om variablen str ikke er null eller udefineret, og konverterer den derefter til en streng ved hjælp af toString() metode. Derefter trimmer den den resulterende streng og kontrollerer, om den er tom.

9. Brug af reduce() metoden:

Hvis vi har en række strenge, og vi vil kontrollere, om nogen af ​​dem er tomme, kan vi bruge reducere() metode til at iterere over arrayet og kontrollere, om nogen af ​​strengene er tomme.

 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'); } 

Produktion

 Array contains an empty string 

Denne kode bruger reducere() metode til at iterere over arrayet arr og kontroller, om nogen af ​​strengene i arrayet er tomme. Det reducere() metode tager en ring tilbage funktion, der kaldes på hvert element i arrayet, og en startværdi på false. Det ring tilbage funktion kontrollerer, om det aktuelle element er en tom streng og returnerer sand, hvis det er, eller akkumulatorværdien ( iflg ) Ellers. Hvis et element i arrayet er en tom streng, vil det endelige resultat af reducere() metode vil være sand, hvilket indikerer, at arrayet indeholder en tom streng.