Tak zupełnie najprościej to zrób po prostu deklarację zmiennej iterowanej przez let, coś na wzór:
const text = 'Pisanie';
for (let i = 0; i < text.length; i += 1) {
setTimeout(() => console.log(text[i]), 500 * i);
}
Masz tu w sumie gotowca w chyba 100% tego co oczekujesz, czyli wyświetlanie kolejno znaków co ok. 500ms.