JSFiddle - React, Tailwind, and code Playground
by alexflav23
JavaScript
var my_array = [
{'done': true, 'name': 'something'},
{'done': false, 'name': 'do homework'},
{'done': true, 'name': 'buy some food'}
];
var my_object = {'done': true, 'name': 'do homework'};
Array.prototype.customIndexOf = function(a, d) {
var matcher = d || defaultMatcher;
for (var c = this.length, b = (c + ~~b) % c; b < c && (!(b in this || matcher(this[b], a))); b++);
return b ^ c ? b : -1;
}
function matcher(a, b) {
return a.name.localeCompare(b.name);
};
function defaultMatcher(a, b) {
return a === b;
};
console.log(my_array.customIndexOf(my_object, matcher));