javascript – Não consigo substituir caracteres de uma string para outra

Estou tentando fazer um efeito de substituição de uma string por outra, mas sem apagar o conteúdo da primeira por completo. Como se fosse um efeito especial, cada letra de uma string vai se transformando em outra palavra. A principio estou tentando fazer como uma máquina de escrever, mas posteriormente quero fazer de forma aleatória. No entanto, não estou conseguindo fazer funcionar, parece que é algum bug.

Eis o código:



    let title1 = "Texto aleatório 1";
    let title2 = "Texto aleatório 2";
    let temp2 = "Texto aleatório 2";
    var k = 0;
    var speed = 255;
    

    onMount(() => {
        typeWriter();
        
    });


    function typeWriter() {
        if ( k < title2.length) {
            temp2 = title2.replace(title2.charAt(k),title1.charAt(k));
            document.getElementById("demo").innerHTML = temp2;
            k += 1;
            setTimeout(typeWriter, speed);
        }
    }