HTML DOM - распространение строки на несколько строк

В настоящее время я пытаюсь распространить строку на несколько строк в HTML/JS. Я использую Repl.It (возможно, это какая-то ошибка/функция на этой странице), но я не могу распространить его на несколько строк, используя "\n". Пожалуйста, порекомендуйте.

HTML-раздел:

<div id = "stats"> 
<script src = "script.js"></script>
</div>

JS-сторона:

function send_stats(message) {
  document.querySelector("#stats").innerHTML = message;
}

send_stats("Stats:\nPlayer hp:" + player_hp + "\nMonster hp:" + monster_hp")
\n — это escape-код строки JavaScript. .innerHTML предназначен для синтаксического анализа строк с помощью синтаксического анализатора HTML, поэтому вам нужно использовать решение HTML... <br>.
Scott Marcus 10.03.2019 15:39
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
92
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Вы должны использовать <br> вместо \n. И используйте Строки шаблона, а не используйте + снова и снова.

let monster_hp = 100.00
let player_hp = 90.00
function send_stats(message) {
  document.querySelector("#stats").innerHTML = message;
}
send_stats(`Stats:<br>Player hp:${player_hp}<br>Monster hp:${monster_hp}`)
<div id = "stats"> 
<script src = "script.js"></script>
</div>

Используйте .innerText вместо innerHTML

var playerHp = 1;
var monsterHp = 30;
var msg = "Stats:\nPlayer hp: " + playerHp + "\nMonster hp: " + monsterHp;


function sendStats(sel, msg) {
  document.querySelector(sel).innerText = msg;
}

sendStats('#stats', msg);
<output id='stats'></output>
.innerText нестандартный. Вместо этого используйте .textContent.
Scott Marcus 10.03.2019 15:42

@СкоттМаркус «Эта функция была первоначально представлена ​​в Internet Explorer и официально указана в стандарте HTML в 2016 году после того, как была принята всеми основными поставщиками браузеров». . Стандарт уже более 2х лет.

zer00ne 10.03.2019 16:13

Кавычки относятся к спецификации WHATWG. Его нет в W3C DOM-API и поэтому он хоть и поддерживается, но не является стандартным. Есть API, где две спецификации. расходятся, и обычно лучше использовать то, что указано в спецификации W3C. Кроме того, он работает иначе, чем стандартный (textContent).

Scott Marcus 10.03.2019 17:58

Другие вопросы по теме