Можешь объяснить, как работает call stack в JavaScript, включая то, как функции добавляются и удаляются, и что происходит, когда он превышает максимальный размер? — ДейлиПреп