Вы также можете использовать трюк с сериализацией JSON.Это короткий и простой, но довольно хакерский вариант.
Это работает, потому что "[0,1]" === "[0,1]"
.
Вот рабочий фрагмент демонстрации:
Array.prototype.indexOfForArrays = function(search)
{
var searchJson = JSON.stringify(search); // "[3,566,23,79]"
var arrJson = this.map(JSON.stringify); // ["[2,6,89,45]", "[3,566,23,79]", "[434,677,9,23]"]
return arrJson.indexOf(searchJson);
};
var arr = [
[2,6,89,45],
[3,566,23,79],
[434,677,9,23]
];
document.body.innerText = arr.indexOfForArrays([3,566,23,79]);