JSFiddle - React, Tailwind, and code Playground

JavaScript

var deepEqual = function(a, b) {
    for (var i in a) {
        for (var j in b) {
            if (i === j) {
                for(var ii in i)
                    for(var jj in j)
                        if(ii === jj)
                        return true;
                        //console.log(ii,jj);
                        // if (a[i] === b[j])
            }
        }
    }
    // console.log('finish');
};

var x = {
    prop1: 'value1',
    prop2: 'value2',
    prop3: 'value3',
    prop4: {
        subProp1: 'sub value1',
        subProp2: {
            subSubProp1: 'sub sub value1',
            subSubProp2: [1, 2, {
                prop2: 1,
                prop: 2
            }, 4, 5]
        }
    },
    prop5: 1000,
    prop6: new Date(2016, 2, 10)
};

var y = {
    prop5: 1000,
    prop3: 'value3',
    prop1: 'value1',
    prop2: 'value2',
    prop6: new Date('2016/03/10'),
    prop4: {
        subProp2: {
            subSubProp1: 'sub sub value1',
            subSubProp2: [1, 2, {
                prop2: 1,
                prop: 2
            }, 4, 5]
        },
        subProp1: 'sub value1'
    }
};

// var q = x;

document.write(deepEqual(x, y));