Corrige el error: tipos por valor y por referencia

Crea una función que devuelva true si dos arreglos contienen valores idénticos, y false en caso contrario.

Para resolver esta pregunta, tu amigo escribe el siguiente código:

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

Pero al probar el código, ves que algo no está del todo bien. Al ejecutar el código, obtienes los siguientes resultados:

checkEquals([1, 2], [1, 3]) ➞ false
// Good so far...

checkEquals([1, 2], [1, 2]) ➞ false
// Yikes! What happened?

Reescribe el código de tu amigo para que compruebe correctamente si dos arreglos son iguales. Para que sean iguales, los arreglos deben tener los mismos elementos en el mismo orden. Las pruebas siguientes deben pasar:

Ejemplos

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([4, 7, 6], [4, 6, 7]) ➞ false

Notas

Pista: Esto tiene que ver con los tipos por valor y los tipos por referencia.