JSFiddle - React, Tailwind, and code Playground

JavaScript

var arr = [];
arr["a1"] = 1;
arr["a2"] = 2;
arr["a3"] = 3;


function forEach (obj, fn, handler) {
    var scope = handler || window;
    for (var prop in obj) {
        if (obj.hasOwnProperty(prop)) {
            fn.call(scope, prop, obj[prop]);
        }
    }
}

function isDef(obj) {
    return typeof obj !== "undefined" && obj !== null;
}

function print(key, val) {
    if (isDef(key)) {
        if (isDef(val)) {
            document.body.innerHTML += "<p>Key: " + key + " Val: " + val + "</p>";
        } else {
            document.body.innerHTML += "<p>" + key + "</p>";
        }
    }
}

print("Array object");
forEach(arr, print);

delete arr["a1"];
print("Array object after delete");
forEach(arr, print);