Corrija o erro / ao comparar arrays (Parte #2)

Crie uma função que retorne true se dois arrays de mesmo tamanho tiverem valores numéricos idênticos em todos os índices, e false caso contrário.

Para resolver esta questão, seu amigo escreveu inicialmente o seguinte código (veja este desafio):

function checkEquals(arr1, arr2) {
  if (arr1 === arr2) {
    return true
   } else {
    return false
   }
}

Se você não sabe ao certo por que o código acima não funciona, recomendo fazer esse desafio primeiro.

Seu amigo pesquisou um pouco mais e corrigiu o código da seguinte forma:

function checkEquals(arr1, arr2) {
  if (arr1.join("") === arr2.join("")) {
    return true
   } else {
    return false
   }
}

Ele funciona na maioria dos casos, mas falha em alguns. Isso deixou seu amigo confuso. Você consegue identificar o erro e corrigi-lo?

Exemplos

checkEquals([1, 2], [1, 3]) ➞ false

checkEquals([1, 2], [1, 2]) ➞ true

checkEquals([4, 5, 6], [4, 5, 6]) ➞ true

checkEquals([4, 7, 6], [4, 5, 6]) ➞ false

checkEquals([1, 12], [11, 2]) ➞ false

Observações

N/A