Algoritmos de JavaScript y proyectos de estructuras de datos - Comprobador de palíndromos

Cuéntanos qué está pasando:
Describe tu problema en detalle aquí.

El codigo funciona pero me gustaria saber si se puedo hace de una mejor manera

Tu código hasta el momento

function palindrome(str) {
  const newStr = str.split("").filter(item => item.match(/[a-zA-Z0-9]/)).map(item => item.toLowerCase()).join(""); 
   
  const reverseStr = str.split("").filter(item => item.match(/[a-zA-Z0-9]/)).map(item => item.toLowerCase()).reverse().join("") 
  
  return newStr === reverseStr;
}

console.log(palindrome("0_0 (: /-\ :) 0-0"));

Información de tu navegador:

El agente de usuario es: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36

Desafío: Algoritmos de JavaScript y proyectos de estructuras de datos - Comprobador de palíndromos

Enlaza al desafío: