David Y.
—How can I check whether a variable is a string in JavaScript?
We can do this using JavaScript’s typeof
operator along with its strict equality operator. We can test this with the following code:
// Function to test if variable is a string function isString(variable) { return typeof variable === "string"; } // Variables of different types let myBool = false; let myNum = 12; let myArray = [1, 2, 3] let myObject = { a: 1, b: 2, c: 3} let myString = "Hello world!" // Tests console.log(isString(myBool)); // will print "false" console.log(isString(myNum)); // will print "false" console.log(isString(myArray)); // will print "false" console.log(isString(myObject)); // will print "false" console.log(isString(myString)); // will print "true"
To check whether a variable is one of JavaScript’s other built-in types, we can replace the value on the right-hand side of the ===
with the appropriate string from the Result column of this table. Note that null
is considered to be of type "object"
. Additional caveats regarding uninitialized variables and other special cases are detailed in the linked page of the MDN documentation.
To check whether a variable is an instance of a custom-defined class, we must use instanceof
instead.
Tasty treats for web developers brought to you by Sentry. Get tips and tricks from Wes Bos and Scott Tolinski.
SEE EPISODESConsidered “not bad” by 4 million developers and more than 100,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.