JSFiddle - React, Tailwind, and code Playground

JavaScript

function createNode(name, klasses) {
    var n = document.createElement(name);
    n.className = klasses;
    return n;
}

function l(x) {
    console.log(x);
}

function hasClass(node, klass)
{
    if(!('className' in node)){
        return false;
    }
    return node.className.split(' ').indexOf(klass) > -1;
}

function addClass(node, klass)
{
    if(!hasClass(node, klass)){
        node.className += ' ' + klass;
    }
}

function removeClass(node, klass)
{
    if(hasClass(node, klass)){
        node.className = node.className.split(klass).join('');
    }
}

l(hasClass(createNode('div', 'test'), 'test')); // true
l(hasClass(createNode('div', 'test'), 'tes')); // false

l(hasClass(createNode('div', 'test1 test2'), 'tes')); // false
l(hasClass(createNode('div', 'test1 test2'), 'test1')); // true
var ololo = createNode('div', 'test1 test2');
addClass(ololo, 'ololo');
l(hasClass(ololo, 'ololo'));
removeClass(ololo, 'test1');
l(hasClass(ololo, 'test1'));