You can use the length
property to check if a string is empty in JavaScript. If the string's length is equal to 0
, then it is empty. Otherwise, the string is not empty.
const str = ''
if (str.length === 0) {
console.log(`String is empty ✅`)
} else {
console.log(`String is not empty ❌`)
}
// String is empty ✅
If the string contains leading or trailing whitespace, you should use the trim()
method to remove whitespace before checking if it is empty:
const str = ' '
if (str.trim().length === 0) {
console.log(`String is empty ✅`)
} else {
console.log(`String is not empty ❌`)
}
// String is empty ✅
The
trim()
method removes the leading and trailing spaces from a string. It returns an empty string if the string only contains spaces.
Alternatively, you could also use the strict equality operator (===
) to check whether a string is empty or not:
const str = ''
console.log(str === '') // true
console.log(0 === '') // false
console.log(false === '') // false
console.log([] === '') // false
console.log(null === '') // false
console.log(undefined === '') // false
As you can see above, the strict equality operator returns false
for null
, undefined
, and false
values in the comparison because these are special values.
To check if a string is truthy and contains one or more characters, use the following code:
const str = 'js'
if (str) {
// `str` variable is NOT false, undefined,
// null, empty string, NaN
console.log(`String is truthy 💯`)
}
// String is truthy 💯
A variable is truthy if it is not an empty string, 0
, null
, undefined
, false
, or NaN
.
✌️ Like this article? Follow me on Twitter and LinkedIn. You can also subscribe to RSS Feed.