Когда вы запускаете код из браузера, API-интерфейс DOM включается, поэтому ваш код выполняет соответствующие условия и находит объект местоположения с информацией о текущем документе. Когда вы пытаетесь запустить его из командной строки с помощью node.js, API DOM не включается, поэтому он выдает ошибку «документ не определен». Node.js предназначен для исключения js-кода на стороне сервера.