а если так document.querySelector('.heading') или document.querySelectorAll('.heading')? Вообще странно. Буквы из разных раскладок не могли вставить в название класса в html или js?
вообще, если бы все было верно, даже при неправильном классе, getElementsByClassName() выдал бы пустой NodeList. А тут почему-то underfined. Я бы попробовал заново переписать первую строку, какая-то проблема с ней
не пользовался вебштормом, но думаю без разницы. По идее браузер обрабатывает. Если бы у вас все было норм, то выдало что-то типа того https://prnt.sc/123dl13