How to Check If an Element Contains a Class in JavaScript

JavaScript has become one of the most popular programming languages and is widely used for web development.

One of the key concepts in web development is to determine if a particular element on a web page has a specific class applied to it.

This can be useful for making decisions about how to interact with the element based on its state.

In this tutorial, we’ll take a look at how to check if an element contains a class in JavaScript.

In web development, a class is a CSS style that can be applied to multiple HTML elements.

Classes are used to give a specific look and feel to elements on a web page.

When working with JavaScript, it’s often necessary to determine if an element has a specific class applied to it.

There are a few different ways to check if an element contains a class in JavaScript, and we’ll take a look at some of the most popular methods.


Using classList

The classList property is one of the most straightforward ways to check if an element contains a class in JavaScript.

This property returns a DOMTokenList of the classes applied to the element.

You can use the contains method on the classList property to check if a specific class is included in the list.

Here’s an example:

const element = document.querySelector('.my-element');
const hasClass = element.classList.contains('my-class');
console.log(hasClass); // true or false

Using className

Another way to check if an element contains a class is by using the className property.

This property returns a string of the classes applied to the element, separated by spaces.

You can use the indexOf method to search the string for a specific class.

If the class is found, the indexOf method will return the index of the first occurrence of the class in the string.

If the class is not found, the indexOf method will return -1.

Here’s an example:

const element = document.querySelector('.my-element');
const className = element.className;
const hasClass = className.indexOf('my-class') !== -1;
console.log(hasClass); // true or false

Using RegExp

You can also use a regular expression to check if an element contains a class.

Regular expressions provide a more powerful way to search for patterns in strings.

In this case, we’ll use a regular expression to search for the class in the className string.

Here’s an example:

const element = document.querySelector('.my-element');
const className = element.className;
const hasClass = new RegExp('(^|\\s)' + 'my-class' + '(\\s|$)').test(className);
console.log(hasClass); // true or false

Conclusion

In conclusion, there are several ways to check if an element contains a class in JavaScript.

You can use the classList property, the className property, or a regular expression to search for a specific class.

The method you choose will depend on your specific use case and personal preferences.

Regardless of the method you choose, it’s important to have a solid understanding of how to check if an element contains a class in JavaScript as it’s a common task in web development.