You want to check that a value is not an empty string, null, or undefined. How do you do this?
To check that a value is not an empty string, null, or undefined, you can create a custom function that returns true
if a value is null
, undefined
, or an empty string and false
for all other falsy values and truthy values:
function isEmpty(value) { return (value == null || (typeof value === "string" && value.trim().length === 0)); } console.log(isEmpty("cat")); // false console.log(isEmpty(1)); // false console.log(isEmpty([])); // false console.log(isEmpty({})); // false console.log(isEmpty(false)); // false console.log(isEmpty(0)); // false console.log(isEmpty(-0)); // false console.log(isEmpty(NaN)); // false console.log(isEmpty("")); // true console.log(isEmpty(" ")); // true console.log(isEmpty(null)); // true console.log(isEmpty(undefined)); // true
The isEmpty
function uses the equality operator (==
) to check if the argument value
is null
or undefined
. This works because if one of the operands is null
or undefined
, the other operand must be null
or undefined
for the equality comparison to return true
. If the argument value
is not null
or undefined
, the right side of the logical OR (||) operator is evaluated.
To check for an empty string, the logical && operator is used. The first operand uses the typeof
operator to check if the argument value
is a string. If the value
is a string, leading and trailing white space and line terminator strings are removed using the trim()
method. This logical && operator expression returns true
if a string is empty or consists of white space and line terminator strings only.
Get actionable, code-level insights to resolve JavaScript performance bottlenecks and errors.
Create a free Sentry account
Create a JavaScript project and note your DSN
Grab the Sentry JavaScript SDK
<script src="https://browser.sentry-cdn.com/7.112.2/bundle.min.js"></script>
Sentry.init({ dsn: 'https://<key>@sentry.io/<project>' });
Loved by over 4 million developers and more than 90,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.