¿Cómo comprobar que una string determinada es un anagrama de otra string en JavaScript?

Anagrama: Un anagrama es una palabra u oración, que por lo general contiene todas las letras originales exactamente una vez, con el fin de ordenar las letras de un término o frase diferente. Algunos de los ejemplos se dan a continuación:

1. malvado = vil

2. un caballero = hombre elegante

3. once más dos = doce más uno

Ejemplo 1: uso de funciones integradas.

HTML

<script>
    function checkAnagram(a, b) {
  
        // Not of same length, can't be Anagram
        if (a.length !== b.length) {
            return false;
        }
  
        // Inbuilt functions to rearrange the string
        var str1 = a.split('').sort().join(''); 
        var str2 = b.split('').sort().join('');
  
        var result = (str1 === str2);
        return result;
    }
  
    // Checking the output
    document.write(checkAnagram('abc', 'cba'));
</script>

Producción:

true

Ejemplo 2 : Sin usar funciones incorporadas.

HTML

<script>
    function checkAnagram(a, b) {
        var array = {};
        if (a === b) {
            return true;
        }
        if (a.length !== b.length) {
            return false;
        }
        for (let i = 0; i < a.length; i++) {
            let res = a.charCodeAt(i) - 97;
            array[res] = (array[res] || 0) + 1;
        }
  
        for (let j = 0; j < b.length; j++) {
            let res = b.charCodeAt(j) - 97;
            if (!array[res]) {
                return false;
            }
            array[res]--;
        }
        return true;
    }
    document.write(checkAnagram('abc', 'cba'));
</script>

Producción:

true

Publicación traducida automáticamente

Artículo escrito por priyavermaa1198 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *