Для этого нет решения jQuery - jQuery в основном используется для манипулирования DOM, ajax и некоторых простых анимаций.Он поставляется с небольшим набором утилит, но, насколько я знаю, ни одна из них не имеет этой функции.
Однако я нашел ошибку в вашем коде.
Array.prototype.compare = function(arr) {
if (this.length != arr.length) return false;
for (var i = 0; i < arr.length; i++) {
if (this[i].compare) {
if (!this[i].compare(arr[i])) return false;
} else { // <-- Here!
if (this[i] !== arr[i]) return false;
}
}
return true;
}
Вам необходимо использовать if
- else
здесь вместо того, чтобы снова запускать обе функции .compare
и сравнивать их с оператором равенства.