Вопрос №66942 от пользователя Елена Круподерова в уроке «Что такое DOM?», курс «JS: DOM API»

Елена Круподерова

Приветик! Я попробовала выполнить задание у себя в редакторе, получилось разбить на три строки. Решила попробовать на каждую переменную вести в console.log. Например console.log(text), почему-то Node говорит, что документ не определен?

const text = document.body.innerHTML.trim();
             ^
ReferenceError: document is not defined
5 0

Maksim Litvinov

Добрый день, Елена! Объект document определён в браузере, он служит для получения содержимого веб страницы. В Node.js этот объект не определён, поэтому вы и получаете такую ошибку

0

Елена Круподерова

Maksim Litvinov,

Я попробовала вызвать через консоли text

const text = document.body.innerHTML.trim();

console.log(text);

Выдает вот такой результат

<script>
(function() {
  var ws = new WebSocket('ws://' + window.location.host + 
             '/jb-server-page?reloadMode=RELOAD_ON_SAVE&'+
             'referrer=' + encodeURIComponent(window.location.pathname));
  ws.onmessage = function (msg) {
      if (msg.data === 'reload') {
          window.location.reload();
      }
      if (msg.data.startsWith('update-css ')) {
          var messageId = msg.data.substring(11);
          var links = document.getElementsByTagName('link');
          for (var i = 0; i < links.length; i++) {
              var link = links[i];
              if (link.rel !== 'stylesheet') continue;
              var clonedLink = link.cloneNode(true);
              var newHref = link.href.replace(/(&|\?)jbUpdateLinksId=\d+/, "$1jbUpdateLinksId=" + messageId);
              if (newHref !== link.href) {
                clonedLink.href = newHref;
              }
              else {
                var indexOfQuest = newHref.indexOf('?');
                if (indexOfQuest >= 0) {
                  // to support ?foo#hash 
                  clonedLink.href = newHref.substring(0, indexOfQuest + 1) + 'jbUpdateLinksId=' + messageId + '&' + 
                                    newHref.substring(indexOfQuest + 1);
                }
                else {
                  clonedLink.href += '?' + 'jbUpdateLinksId=' + messageId;
                }
              }
              link.replaceWith(clonedLink);
          }
      }
  };
})();
</script>

Что за функция в script?

0

Maksim Litvinov

Елена, а какая страница при этом открыта в браузере? Попробуйте сделать так: откройте веб-доступ в упражнении, запустите панель разработчика в редакторе и в консоли выполните этот код:

const text = document.body.innerHTML.trim();

console.log(text);

В выводе получится текст:

I do not fear computers. Computer Science is no more about computers than astronomy is about telescopes. The computer was born to solve problems that did not exist before.
0

Елена Круподерова

Maksim Litvinov, это я писала в своем редакторе WebStrom, и страница в Chrome. Дополнительная функция в scripte показывает в консоли Chrome.

0

Maksim Litvinov

Елена, а со страницей из упражнения в веб доступе получилось в итоге?

0

Используйте Хекслет по максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Даю согласие на обработку персональных данных, соглашаюсь с «Политикой конфиденциальности» и «Условиями оказания услуг»

Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
7 июля 10 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
7 июля 10 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
7 июля 10 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
7 июля 10 месяцев
Иконка программы Fullstack-разработчик
Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
7 июля 16 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
7 июля 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Создает веб-приложения со скоростью света
7 июля 5 месяцев