JSFiddle - React, Tailwind, and code Playground

HTML

<canvas id="drawCanvas" width="1600" height="1600" style="height:800px;width:800px"/>

JavaScript

var cmp = function(v1, v2) { return v1 == v2; };
var vals = [
		["null", function() { return null; }],
    ["undefined", function() { return undefined; }],
    ["false", function() { return false; }], 
    ['"false"', function() { return "false"; }],
    ["Boolean(false)", function() { return new Boolean(false); }],
    ["[]", function() { return []; }], 
    ["[[]]", function() { return [[]]; }], 
    ['""', function() { return ""; }],
    ['String("")',function(){return new String('')}],
    
    ["0", function() { return 0; }],
    ["Number(0)",function(){return new Number(0)}],
    ['"0"', function() { return "0"; }], 
    ['String("0")',function(){return new String('0')}],
    
    
    ["[0]", function() { return [0]; }], 
    
		["true", function() { return true; }],
    ['"true"', function() { return "true"; }],
    ["Boolean(true)", function() { return new Boolean(true); }],
    
    
    ["1",function() { return  1; }],
    ["Number(1)",function(){return new Number(1)}],
    ['"1"', function() { return "1"; }],
    ['String("1")',function(){return new String('1')}],
    
    
    ["[1]", function() { return [1]; }],
    
        
    ["-1", function() { return -1; }],
    ["Number(-1)",function(){return new Number(-1)}],
    ['"-1"', function() { return "-1"; }],
    ['String("-1")',function(){return new String('-1')}],
    ["[-1]", function() { return [-1]; }],
    
    ["Infinity", function() { return Infinity; }],
    ["-Infinity", function() { return -Infinity; }],
    
    
    ["{}", function() { return {}; }], 
    ["NaN", function() { return NaN; }]
];

var canvas = document.getElementById("drawCanvas");
var ctx = canvas.getContext("2d");
var n = vals.length;
var r = 40; // diameter of grid squares
var p = 160; // padding space for labels

// color grid cells
for (var i = 0; i < n; i++) {
    var v1 = vals[i][1]();
    for (var j = 0; j < n; j++) {
        var v2 = vals[j][1]();
        var eq = cmp(v1, v2);
        ctx.fillStyle = eq ? "orange"...