Я пытаюсь понять рекурсию и оптимизацию хвостовых вызовов.
У меня есть этот пример кода ниже, и это, кажется, не TCO. Почему это не так и как я могу изменить его для оптимизации?
const getState = () => {
const xhr = new XMLHttpRequest();
xhr.open('GET', 'https://stackoverflow.com', true);
xhr.onload = () => console.log(xhr.response);
xhr.send();
};
(function updateState() {
getState();
setTimeout(updateState, 1000);
})();